Što je SSL?
SSL je naziv za kriptografske protokole koji omogućavaju sigurnu komunikaciju kroz računalne mreže. SSL (Secure Sockets Layer) je prethodnik TLS-a (Transport Layer Security) te se različite verzije navedenih protokola primjenjuju tijekom korištenja internet preglednika, emaila, slanja instant poruka (Facebook, WhatsApp, Viber), VOIP poziva i slično.
HTTPS je protokol nastao kombinacijom HTTP i SSL/TLS protokola. Omogućava potvrdu autentičnosti posjećene web stranice, zaštitu privatnosti te očuvanje integriteta podataka koji se razmjenjuju. U narednim godinama se očekuje kako će većina web stranica koristiti HTTPS protokol, prema statistikama Googleovog Chrome web preglednika trenutno se preko 50% stranica prikazuje preko HTTPS protokola i na takvim, sigurnim stranicama korisnici provode 2/3 vremena ukupnog surfanja.
SSL certifikati
SSL certifikati opće su prihvaćeni mehanizam podizanja sigurnosti internetskih stranica na višu razinu i današnja su norma za jamstvo sigurnosti na internetu. SSL certifikatom možete nenametljivo i provjereno potvrditi da je vaša internetska stranica sigurna. Naime, kada je certifikat uspješno instaliran na poslužitelju, protokol HTTP izmijenit će se u HTTPS (gdje S stoji za „siguran“) a preglednik će pokazati uočljivu ikonu lokota.
U globalu, svi SSL certifikati rade istu stvar, razlikuju se prema nivou povjerenja koji pružaju te po vizualnom prikazu u web pregledniku u slučaju EV SSL certifikata.
Razlikujemo tri vrste SSL certifikata:
- DV (Domain Validation) – povoljna cijena, brzo i lako izdavanje, provjerava se samo vlasništvo nad domenom, prikazuje se kao ikona zaključanog lokota nakon kojeg slijedi https:// te ime domene
- OV (Organization Validation) – srednje visoka cijena uz osnovnu provjeru tvrtke koja naručuje certifikat
- EV (Extended Validation) – visoka cijena, izdavanje može potrajati od 1-10 dana, vrši se temeljita provjera tvrtke koja naručuje certifikat. Ovaj certifikat je specifičan po tome što se u web pregledniku prikazuje u obliku dugačke zelene trake adresnog polja u web pregledniku s imenom poduzeća.
Zašto bi trebali koristiti SSL na svojim web stranicama?
Sigurnost
Jedan od bitnijih razloga zašto je važno imati SSL certifikat te koristiti HTTPS protokol je zbog sigurnosti. Web trgovinama i web stranicama koje vrše naplatu proizvoda i usluga putem kreditnih i debitnih kartica SSL certifikat je neophodan zbog potrebe za enkriptiranim prijenosom povjerljivih podataka. Za neke od stranica bitan razlog je zaštita administracijskog sučelja – npr. kod WordPress login stranica korisničko ime i lozinka se ne šalju direktno iz vašeg web preglednika na web poslužitelj, već prolaze kroz mnogo drugih uređaja na Internetu. Ako ne koristite HTTPS, podaci nisu enkriptirani, već u obliku običnog teksta što znači da se tako poslani korisnički podaci mogu presresti na putu do odredišta.
Povjerenje i kredibilitet
Dodavanjem SSL certifikata podižete razinu povjerenja korisnika te pozitivno utječete na kredibilitet vaše web stranice. Korisnike sve više brine mogućnost presretanja njihovih podataka ili korištenja njihovih podataka za nezakonite aktivnosti – npr. krađa identiteta. Po Globalsign-ovom istraživanju, 84% ispitanih korisnika iz zemalja EU bi odustalo od kupovine u web trgovini ako bi se podaci slali preko nezaštićene veze (HTTP). Osim toga, u prosjeku se gotovo 50% online kupaca brine o mogućnosti krađe njihovih podataka kreditne kartice.
Od siječnja 2017. Google Chrome web preglednik (od verzija 56 nadalje) će HTTP web stranice koje sadrže polja za upisivanje lozinki ili kreditnih kartica označavati sa “Not secure”, te se naknadno može očekivati isticanje upozorenja putem crvene ikone i teksta “Not secure”.
SEO
Google je još 2014. godine objavio kako će se primjena HTTPS-a na web stranicama biti jedan od faktora koje će utjecati na rangiranje web stranica.
Iz tog razloga je korisno implementirati HTTPS na web stranici i s vremenom očekivati nešto viši ranking na Google tražilici te na taj način dobiti više posjeta.
Bolji prikaz refferal podataka
Ako koristite Google Analytics za praćenje posjeta na vašoj web stranici, između ostalog, bilježe se podaci kako korisnici dolaze na vašu stranicu.
Korisnici mogu doći putem tražilice (Search Traffic), direktno upisivanjem imena domene u preglednik (Direct Traffic) te putem preporuke (Refferal Traffic) odnosno linka na nekoj drugoj web stranici – npr. to može biti link na Facebooku prema vašem webu. Google Analytics blokira refferal podatke koji idu sa HTTPS stranica na HTTP stranice.
Što to znači? Ukratko, ako korisnik dok surfa po nekoj HTTPS web stranici klikne na link prema vašoj web stranici koja ne podržava HTTPS, onda se ti podaci ne bilježe kao Refferal Traffic već kao Direct Traffic pa nećete imati potpune informacije odakle vam dolaze posjeti na web stranicu.
Migracija sa HTTP na HTTPS
1. Kupovina SSL certifikata ili korištenje besplatnog certifikata – AutoSSL / Let’s Encrypt
2. Instalacija i provjera SSL certifikata
3. Izmjena svih HTTP linkova u HTTPS linkove
4. Postavljanje trajnog (301) preusmjerenja na nove HTTPS linkove
5. SEO – optimizacija za tražilice
Napomena:
Nakon što instalirate SSL certifikat moći ćete pristupiti i HTTP i HTTPS verziji stranice, te se na postojećoj HTTP verziji stranice neće ništa promijeniti. U većini slučajeva ćete nakon što se uvjerite da sve radi bez problema željeti koristiti isključivo HTTPS verziju, obje verzije stranice će vam raditi istovremeno, možete na to gledati kao dvije kopije iste web stranice pa ćemo naknadno tražilicama dati do znanja koju verziju želimo koristiti.
Kupovina SSL certifikata ili korištenje besplatnog certifikata – AutoSSL / Let’s Encrypt
Za prelazak sa HTTP na HTTPS protokol, biti će vam potreban SSL certifikat. Certifikat možete zakupiti preko hosting tvrtke kao što je Plus Hosting , zatim putem službenih web stranica tvrtki koje izdaju certifikate (Comodo, GeoTrust, Thawte, RapidSSL) ili putem web trgovina koje surađuju s više tvrtki i prodaju SSL certifikate uz nešto povoljnije cijene.
Jedno od mogućih rješenja je korištenje besplatnih SSL certifikata, npr. kod određenih hosting providera može se koristiti AutoSSL – nova funkcionalnost koja omogućava automatsko generiranje i instalaciju besplatnog SSL certifikata, radi se o osnovnom, DV – Domain Validated certifikatu koji autorizira ili cPanel u suradnji s Comodom, ili Let’s Encrypt.
Plus Hosting svojim korisnicima omogućuje besplatno generiranje i instalaciju SSL certifikata uz AutoSSL.
Instalacija i provjera SSL certifikata
Ako ste koristili AutoSSL / Let’s Encrypt, instalacija SSL certifikata bi trebala biti automatski odrađena.
Ako ste kupili SSL certfikat, potrebno ga je instalirati na web poslužitelj / server. Ovaj dio možete prepustiti hosting tvrtki ili podesiti samostalno. U nastavku su upute za podešavanje servera (na engleskom jeziku):
- Instalacija SSL certificata – Apache
- >Instalacija SSL certificata – NGINX
- Instalacija SSL certificata – Microsoft IIS 7.x – 8.x
- Instalacija SSL certificata – WHM / cPanel
Nakon što je SSL certifikat postavljen na server, trebali bi moći otvoriti i http i https verziju domene te provjeriti da li se učitavaju sve povezane datoteke na https verziji web stranice.
Provjeru ispravnosti certifikata možete testirati web alatima:
https://www.ssllabs.com/ssltest/analyze.html
https://www.htbridge.com/ssl/
Izmjena svih HTTP linkova u HTTPS linkove
Kod prelaska na HTTPS, želimo osigurati da se sve datoteke učitavaju putem HTTPS protokola kako bi ih browser sve mogao prikazati – neki browseri upozoravaju na “mixed content”, a neki ne prikazuju datoteke ako se stranici pristupa preko HTTPS protokola, a da se datoteke učitavaju sa HTTP protokola. Najbolja praksa je koristiti relativne URL-ove (npr./images/blue.png
), umjesto apsolutnih (npr. http://www.example.com/images/blue.jpg
). Ako se prilikom pregleda HTTPS verzije stranice ne prikazuju određene datoteke, treba izmijeniti te apsolutne, hardkodirane linkove u relativne linkove – ili ručno ili putem alata koji taj proces mogu automatizirati.
Ako koristite WordPress, mogli bi vam dobro doći pluginovi kao što su “Search & Replace” za izmjenu serijaliziranih podataka u bazi podataka odnosno “Really Simple SSL” koji se jednostavno koristi i ne zahtjeva puno podešavanja. Još jedan plugin koji dobro radi svoj posao iako dugo vremena nije izašla nova verzija je “WordPress HTTPS“.
Nemojte zaboraviti na statične datoteke koje vaša web stranica poziva/dohvaća sa vanjskih servera – različite CSS i JS datoteke (npr. jQuery, Google Fonts, Google Analytics) te izmjenite linkove da pozivaju HTTPS verzije tih datoteka (obično je dovoljno zamijeniti http sa https prefiksom).
Koristan alat za testiranje vaših web stranica koji provjerava da li se svi resursi učitavaju preko HTTPS protokola je dostupan na: https://www.jitbit.com/sslcheck/
Nakon što utvrdite da HTTPS verzija web stranica radi ispravno, da se ne javljaju ‘Mixed-Content” upozorenja, te da se u internet pregledniku prikazuje zeleni lokot u adresnoj traci možete krenuti dalje.
Postavljanje trajne (301) redirekcije sa HTTP na HTTPS verziju web stranice
S obzirom da nam i HTTP i HTTPS verzija stranice rade, ako želimo svim posjetiteljima osigurati sigurnije surfanje te izbjeći Googleove penale zbog duplog sadržaja, trebamo podesiti 301 redirekciju kako bi se posjetitelji koji dođu na HTTP verziju automatski preusmjerili na HTTPS verziju, a postojeći HTTP linkovi prenijeli link-juice na HTTPS linkove. Nakon dodavanja redirekcije obavezno testirajte da li sve radi kako treba.
Primjer konfiguracije za Apache servere – navedeni kod se dodaje u .htaccess datoteku.
1 2 3 4 5 | <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] </IfModule> |
ili
1 2 3 4 5 | <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} </IfModule> |
Ako trebate preusmjeriti sve posjetitelje na www varijantu domene i forsirati https protokol te želite najbolje performanse ili vam je Google PageSpeed Insights alat predložio “Avoid landing page redirects” koristite sljedeća pravila:
1 2 3 4 5 6 7 | <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. [NC,OR] RewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] RewriteRule ^ https://www.%1%{REQUEST_URI} [R=301,L,NE] </IfModule> |
SEO – optimizacija za tražilice
Kako bi migracija na HTTPS protekla bez problema odnosno da nova verzija stranice (HTTPS) što prije bude indeksirana, pripremili smo nekoliko korisnih savjeta.
Google Search Console
Dodajte obje verzije domene (http i https) u Google Search Console, uključujući varijantu sa i bez www. Odaberete opciju “Add Property” te ako vaša domena glasi “primjer.hr”, dodate:
http://primjer.com
i http://www.primjer.com
te https://primjer.com
i https://www.primjer.com
. Verifikaciju domene obavite putem jedne od ponuđenih metoda – obično je najbrže postaviti HTML datoteku u public_html folder ili koristiti Google Analytics metodu verifikacije.
Ako koristite poddomenu, primjenite isti postupak – dakle dodajete: http://poddomena.primjer.com
i https://poddomena.primjer.com
U Google Search konzoli odaberete preferiranu verziju vaše web stranice, onu koju želite vidjeti u rezultatima pretrage, obično je to https verzija sa www prefiksom (https://www.primjer.com
).
Sitemap
Generirajte novi sitemap – XML datoteku koja sadrži sve https linkove vaše stranice koju ćete učitati u Google Search konzolu i to u profil HTTPS verzije web stranice (https://www.google.com/webmasters/tools/sitemap-list). Ako ste već imali učitan sitemap u HTTP profilu stranice, njega ne dirate – s vremenom će se broj indeksiranih linkova povećavati na HTTPS profilu, a smanjivati na HTTP profilu u Google Search konzoli.
Za generiranje XML sitemapa, iskoristite besplatni online alat: https://www.xml-sitemaps.com
Sitemap nije nužan da bi vam Google indeksirao web stranicu, ali može vam dobro doći kako bi provjerili da li je indeksiranje prošlo uspješno odnosno što je potrebno napraviti kako bi Google izvršiti indeksiranje.
Sitemap osim u Google Search konzolu možete učitati i u Bing i Yandex webmaster tools.
robots.txt datoteka
robots.txt datoteka kontrolira kojim dijelovima vaše web stranice Googlebot i ostali roboti za indeksiranje stranica mogu pristupiti te iste indeksirati. Bitno je omogućiti robotima pristup svim stranicama koje želite indeksirati, a zabraniti indeksiranje samo za administracijsko sučelje ili slično. Koristan online alata s kojim možete kreirati robots.txt: http://www.robotsgenerator.com/
Primjer minimalne robots.txt datoteke – dopušten je pristup svim robotima i imaju dopuštenje indeksirati sve linkove na koje naiđu te je dodana mapa weba odnosno sitemap iako je sitemap datoteku najbolje ručno učitati u Google/Bing/Yandex webmaster sučelje.
1 2 3 4 | User-Agent: * Disallow: Sitemap: https://www.primjer.com/sitemap.xml |
Google Analytics
Posjetite Google Analytics, te u administratorskom sučelju pod postavkama za vašu web stranicu izmijenite Default URL u https verziju. Ukratko: Property Settings -> Basic Settings -> Default URL izmijenite iz http:// u https://
Na taj način nećete izgubiti dosadašnje podatke o posjećenosti već će se posjete od tog trenutka bilježiti za https verziju stranice.
Ostali savjeti
Želimo dati jasan signal tražilicama da odsad koristimo https verziju stranice. Izmijenite sve ostale linkove koji vode prema vašoj web stranici kako bi odsad koristili https varijantu.
- PPC kampanje – AdWords, Bing, Facebook oglasi
- email marketing kampanje – Aweber, MailChimp itd.
- linkove na društvenim mrežama – Facebook, Twitter, Google+, LinkedIn
- ostale linkove na vanjskim web stranicama koji vode na vašu web stranicu