Let's Encrypt a vaše weby
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Let's Encrypt a vaše webyLet's Encrypt a vaše weby

 

Let's Encrypt a vaše weby

Google       Google       19. 2. 2016       5 960×

Šifrovaná komunikace s webovými stránkami je dnes již poměrně rozšířená. Google ve svém algoritmu pro řazení stránek zvýhodňuje ty, které povolují zabezpečené připojení. Přihlašování a komunikace s bankami, s e-mailem a podobnými službami jsou šifrované, ale co ostatní webové stránky, jako váš e-shop, firemní stránka a podobně? Získejte a nasaďte SSL certifikát jednoduše a zdarma díky službě Let‘s Encrypt a Microsoft Azure!

Reklama
Reklama

Zpátky do minulosti, aneb jak získat SSL certifikát před rokem 2016?

Proces získávání SSL certifikátu byl historicky poměrně složitý a zdlouhavý. Pokud jste chtěli certifikát zdarma, mohli jste využít služby jako např. StartSSL, u které však bohužel docházelo k častým problémům se samotným vydáváním certifikátů, v opačném případě vás čekala poměrně nemalá investice do certifikátu samotného. Následovalo ověření identity a všelijakých osobních informací, v některých případech i poměrně absurdní ověření fyzické adresy.

Zjednodušit celý tento proces se pokusila komunita CAcert.org, bohužel však bylo vždy nutné nainstalovat manuálně jejich kořenový certifikát.

V nedávné době také služba CloudFlare přinesla tzv. univerzální SSL, což umožnilo mnoha milionům webů využívat zdarma SSL bez nutnosti jakýchkoliv změn, nicméně pokud jste nechtěli využívat CloudFlare jako prostředníka nebo jste potřebovali například větší limity pro upload, museli jste si vystačit sami.

Let’s Encrypt byl oficiálně spuštěn v červenci 2015.

Držte se, přichází Let‘s Encrypt

Let‘s Encrypt je nová internetová certifikační autorita, která je podporovaná velkými a známými internetovými společnostmi, jako jsou Electronic Frontier Foundation (EFF), Mozilla, Google Chrome a mnoho dalších. Let‘s Encrypt řeší problematiku žádosti, validace, podepsání, instalace a dokonce i obnovení certifikátu, a je kompletně open source, postavený na otevřeném standardu ACME (Automated Certificate Management Environment). Samotný protokol ACME je jednoduchý na pochopení a velmi dobře zdokumentovaný. Certifikát je vždy vydaný s platností 90 dní (což zvyšuje bezpečnost) a typicky se automaticky obnoví 30 dní před koncem platnosti – kdyby došlo k nějakým problémům, tak aby bylo možné je řešit včas.

Používáme Let‘s Encrypt

Pokud je váš web hostovaný na již podporované platformě (např. Apache na systému, který je založený na Debianu), můžete službu začít využívat velmi jednoduše:

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto --apache -d example.com -d www.vasweb.cz

Takto jednoduše si můžete vygenerovat certifikát pro váš web (samozřejmě existuje i spousta složitějších scénářů, pro které můžete využít dokumentaci) a začít ho ihned používat – a nemusíte vůbec řešit jeho obnovu, Let’s Encrypt dělá vše za vás.

Let‘s Encrypt a IIS

Nahoře jsem uvedl, že je Let‘s Encrypt založený na otevřeném protokolu ACME, a jelikož zatím neexistuje oficiální podpora pro IIS a Windows, v komunitě vznikl ACMESharp – knihovna pro .NET a PowerShell klient. A pokud nemáte rádi PowerShell, můžete využít zjednodušeného klienta (postaveného na ACMESharp), který je velmi jednoduchý a využívá staré dobré příkazové řádky – letsencrypt-win-simple.

Tady samozřejmě vývoj neskončil a vznikl dokonce i grafický klient Certify.

Prostředí grafického klienta Certify

Díky těmto možnostem si můžete sami vybrat nástroj, pomocí něhož budete SSL certifikáty od Let’s Encrypt získávat.

Let‘s Encrypt a Azure

Pokud však vlastní server nemáte a využíváte cloudového hostingu – Azure Web Apps od Microsoftu, nemusíte zoufat, přesně pro vás je jeden z mnoha dostupných doplňků – Azure Let‘s Encrypt. Doplněk v současné době ještě není dostupný v novém portále Azure, a proto je nutné ho instalovat skrze SCM web (pokud jste se ještě nikdy se SCM webem nesetkali, můžete se podívat na krátké intro).

Samotná instalace a nastavení vám chvilku zabere, ale poté máte možnost vytvářet certifikáty velmi jednoduše a rychle. Na potřebné kroky se nyní společně podíváme:

Založení Azure Web App

Pokud ještě nemáte Web App v Azure založený, můžete ho jednoduše vytvořit – podívejte se na následující video:

Nezbytné požadavky

Podporovaný App Service plán

Jelikož budete využívat vlastní domény a SSL připojení, je nutné využívat podporovaný plán (minimálně S1 ze skupiny Standard, jelikož podporuje SSL na vlastních doménách).

Výběr hostingového plánu pro App Service

Vlastní doména

Doména musí být přiřazená ke stránce, kterou plánujete využívat s vlastním certifikátem – pro přiřazení můžete využít tohoto návodu.

Storage Account

Abyste mohli využívat funkce, jako je automatické obnovení certifikátů, je nutné abyste měli vytvořený Storage Account, do kterého bude aplikace na pozadí ukládat persistentní data. Návod na vytvoření najdete zde. Následně je potřeba, abyste uložili Connection String do nastavení aplikace jako AzureWebJobsStorage a AzureWebJobsDashboard.

Instalace doplňku

Otevřete prostředí SCM vašeho webu – https://vasweb.scm.azurewebsites.net a přejděte do Site extensions. V galerii všech doplňků vyhledejte Azure Let‘s Encrypt. Následně nainstalujte verzi doplňku, která vám vyhovuje (pokud si nejste jistí, zvolte x86 verzi).

Instalace doplňku z prostředí SCM – Kudu

Jakmile je instalace doplňku hotová, je nutné restartovat web. Po instalaci přejděte do prostředí pro instalaci a konfiguraci Azure Let‘s Encrypt (buď tak, že kliknete na tlačítko „play“, nebo přímo na adresu https://vasweb.scm.azurewebsites.net/letsencrypt).

Instalace a konfigurace doplňku Azure Let’s Encrypt

Registrace Service Principalu

Aby instalace mohla proběhnout automaticky, je potřeba vytvořit v Azure tzv. Service Principal. Podrobný návod najdete zde, pro ukázku uvedu jenom sérii příkazů v PowerShellu (budete potřebovat nainstalovaný Azure PowerShell).

Login-AzureRmAccount
$uri = 'https://adresa vaší aplikace‘
$password = 'nějaké silné a náhodné heslo'
$app = New-AzureRmADApplication -DisplayName ‘název aplikace’ -HomePage $uri -IdentifierUris $uri -Password $password
New-AzureRmADServicePrincipal -ApplicationId $app.ApplicationId
New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $app.ApplicationId

Díky těmto krokům dojde k vytvoření vašeho Service Principalu – uložte si $app.ApplicationId (ClientId) a $password (ClientSecret), jelikož jsou potřeba v průběhu instalace doplňku.

Nastavení aplikace

S vytvořeným Service Principalem máme již vše, co potřebujeme, abychom mohli dokončit instalaci Let‘s Encrypt doplňku pro Azure Web Apps.

  • Tenant – Název vašeho tenantu v Azure, typicky castmailu.onmicrosoft.com.
  • SubscriptionId – ID vašeho předplatné Azure – je možné zjistit například z Azure Portálu v detailech vaší Web app.
  • ClientId – ID klienta, které jste získali při registraci Service Principalu.
  • ClientSecret – Tajemství, které jste vytvořili při registrace Service Principalu.
  • ResourceGroupName – Název skupiny prostředků, ve které se nachází váš web.
  • ServicePlanResourceGroupName – Pokud je webhostingový plán a webová aplikace ve stejné skupině prostředků, můžete nechat prázdné.

Poté zaškrtněte Update Application Settings – dojde k uložení těchto údajů do proměnných aplikace a pokračujte kliknutím na Next.

Na pozadí dojde k vytvoření automatického Web Jobu, který se stará o automatickou obnovu expirujících certifikátů. Pokud instalace proběhne úspěšně, dostanete se na obrazovku, kde uvidíte veškeré domény spjaté s danou webovou aplikací.

Seznam domén, které jsou přiřazené k webové aplikaci

Pokračujte kliknutím na Next.

Nyní jste na stránce, kde se generují samotné certifikáty. Vyberte ze seznamu hostname, pro které chcete certifikát vygenerovat a zadejte vaši e-mailovou adresu. Pokud se jedná pouze o testovací certifikát, můžete využít tzv. Staging, což v praxi znamená, že dostanete certifikát, který je podepsaný pouze Let‘s Encrypt certifikační autoritou, a tudíž není automaticky důvěryhodný. Poté stačí pouze potvrdit vytvoření certifikátu pomocí tlačítka Request and Install certificate.

Ověření funkcionality

Abychom ověřili, že vše proběhlo správně a funguje, začněte tím, že otevřete váš web na vlastní doméně ve vašem prohlížeči a zkontrolujete certifikát, kterým se prokazuje váš web.

Vygenerovaný certifikát od Let‘s Encrypt.

Také je potřeba ověřit to, zda došlo ke správnému vytvoření automatického Web Jobu, a že funguje, tudíž přejděte na stránku s jeho konfigurací – buď z Azure Portálu, detailu Web App a sekce Web Jobs, nebo přímo z konfigurace Let‘s Encrypt – v záhlaví stránky je odkaz Web Jobs. Na této stránce uvidíte, kdy například došlo k poslednímu obnovení certifikátu nebo pokud nastaly nějaké problémy.

Přehled Web Jobů

Závěrem

Nesmírnou výhodou služby Let‘s Encrypt je to, že můžete velmi jednoduše, rychle a hlavně bezplatně získat SSL certifikáty. Díky této integraci do Microsoft Azure je celý proces velmi jednoduchý a rychlý. Každopádně je nutné zmínit, že doplněk Azure Let‘s Encrypt je stále ve vývoji a není doporučené ho využívat v produkčním prostředí. Doplněk je k dispozici jako open source na GitHubu, takže se i vy můžete zapojit do jeho vývoje.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

1 názor  —  1 nový  
Hlasování bylo ukončeno    
3 hlasy
Google
(fotka) Jan HájekJan se zabývá spoustou technologií nejen od společnosti Microsoft. Mezi ty hlavní patří Windows Server, Office 365 a Microsoft Azure. Dlouhodobě vyvíjí v PHP a JavaScriptu (+ Node.js) nad platformou Microsoft Azure. Přispívá napříč různými opensource knihovnami, a některé vlastní také publikuje. O své zkušenosti se rád dělí v podobě přednášek, článků a diskuzí.
Web     Twitter     Facebook     LinkedIn    

Nové články

Obrázek ke článku NEWTON Media prohledá 200  milionů mediálních zpráv během sekund díky Cisco UCS

NEWTON Media prohledá 200 milionů mediálních zpráv během sekund díky Cisco UCS

Česká společnost NEWTON Media provozuje největší archiv mediálních zpráv ve střední a východní Evropě. Mezi její zákazníky patří například ministerstva, evropské instituce nebo komerční firmy z nejrůznějších oborů. NEWTON Media rozesílá svým zákazníkům každý den monitoring médií podle nastavených klíčových slov a nabízí online službu, kde lze vyhledat mediální výstupy v plném znění od roku 1996.

Reklama
Reklama
Obrázek ke článku Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Touto roční dobou, kdy je zem pokrytá barevným listím a prsty křehnou v mrazivých ránech, se obvykle těšíme na zbrusu novou verzi RAD Studia. Letos si však ale budeme muset počkat na Godzillu a Linux až do jara. Vezměme tedy za vděk alespoň updatem 2 a jelikož dle vyjádření pánů z Embarcadero se budou nové věci objevovat průběžně, pojďme se na to tedy podívat.

Obrázek ke článku Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Stále rostoucí zájem o cloudové služby i maximální důraz na pružnost, spolehlivost a bezpečnost IT vedou k výrazným inovacím v datových centrech. V infrastruktuře datových center hraje stále významnější roli software a stále častěji se lze setkat s hybridními přístupy k jejich budování i provozu.

Obrázek ke článku Konference: Mobilní technologie mají velký potenciál pro byznys

Konference: Mobilní technologie mají velký potenciál pro byznys

Firmy by se podle analytiků společnosti Gartner měly  rychle přizpůsobit skutečnosti, že mobilní technologie už zdaleka nejsou horkou novinkou, ale standardní součástí byznysu. I přesto - nebo možná právě proto - tu nabízejí velký potenciál. Kde tedy jsou ty největší příležitosti? I tomu se bude věnovat již čtvrtý ročník úspěšné konference Mobilní řešení pro business.

Reklama autora

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý