Gratis SSL-certifikat från Let’s Encrypt

 

Let's Encrypt

Let’s Encrypt-projektet som vi skrivit tidigare om är ett projekt som stöttas av Mozilla, Facebook, ISOC, Akamai och Cisco och erbjuder gratis SSL-Certifikat (eller TLS-certifikat som är mer korrekt benämning).

Eftersom Let’s Encrypt nu finns i publik beta så tog vi tillfället i akt och testade hur det fungerar, och sammanfattat kan vi skriva att det fungerar helt ok. Statistiken visar även på att det utfärdats 80 000 certifikat under det få dagar som projektet varit i publik beta.

Så gör du med Let’s Encrypt

Först och främst så klonar vi hem det publika repo som finnes på Github direkt från vår webbserver och tittar på argumenten. Då kan det också hända att du måste installera extra beroenden som behövs, och då får du ange sudo-lösenord.

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto --help
Bootstrapping dependencies for Debian-based OSes...
[sudo] password for x:

Sen kan du köra lite olika kommandon beroende på vilken webbserver du har. Eftersom vi har Nginx så väljer vi att skapa och installera certifikatet oberoende av webbserver ”certonly”:

$ ./letsencrypt-auto certonly --webroot -w /var/www/domän.se/docs/ -d www.domän.se -d domän.se

När vi först körde kommandot fick vi felmeddelandet:

- The following 'urn:acme:error:unauthorized' errors were reported by
 the server:
Error: The client lacks sufficient authorization

Vilket berodde på att vi i vår Nginx-konfigg ej tillät filer eller kataloger som börjar på punkt: ., vilket måste tillåtas pga att en katalog vid namn .well-known/acme-challenge/ skapas i webbrooten.

Du får även följande fråga:

Enter email address (used for urgent notices and lost key recovery)

Och om allt går som det ska skapas sedan certifikatet:

IMPORTANT NOTES:
 - If you lose your account credentials, you can recover through
 e-mails sent to epost@domän.se. 
 - Congratulations! Your certificate and chain have been saved at
 /etc/letsencrypt/live/domän.se/fullchain.pem. Your cert will expire
 on 2016-03-07. To obtain a new version of the certificate in the
 future, simply run Let's Encrypt again.
 - If like Let's Encrypt, please consider supporting our work by:

Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
 Donating to EFF: https://eff.org/donate-le

Sedan får du själv lägga in ungefär följande rader i din Nginx-konfigg:

 ssl_certificate /etc/letsencrypt/live/domän.se/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/domän.se/privkey.pem;

När det fungerar ser det ut enligt följande i Chrome:

Skärmavbild 2015-12-08 kl. 15.09.18

Vid felsökning så är webbserverloggarna en viktig del, kolla dem om det inte fungerar.

90 dagars livstid

Då var det här med att certifikaten har så pass kort livslängd jämfört med dem från exempelvis GeoTrust eller Comodo. Och det beror på att projektet vill hålla hög säkerhet eftersom nycklar röjs samt att de vill uppmuntra automatisering. Efter 60 dagar så rekommenderar Let’s Encrypt att man skapar nya certifikat.

Faktum är att Firefox Telemetry visar på att 29% av alla TLS-transaktioner går över certifikat som har ju 90 dagars livslängd.

Vidare läsning

Och vi rekommenderar Mozilla SSL Config Generator samt följande läsning:

Vill du inte ha gratis TLS-certifikat från Let’s Encrypt så rekommenderar jag vår systersajt https.se

Jonas Lejon

Om Jonas Lejon

En av sveriges främsta experter inom cybersäkerhet med över 20 års erfarenhet. Frågor? Kontakta mig på: [email protected] eller LinkedIn Twitter

One comment

Skriv en kommentar