2017. február 10., péntek

SSL tanúsítvány ingyen (Let's encrypt)

SSL tanúsítvány ingyen (Let's encrypt)

Ha a webszerverünket szeretnénk biztonságos HTTPS kapcsolaton is elérhetővé tenni, esetleg biztonságos csatornát biztosítani a levelezéshez (IMAPS, POP3S), akkor bizony kicsit a zsebünkbe kell nyúlnunk, és tizenezer Ft/domain áron bevásárolni egy (vagy pár) tanúsítványt. Legalábbis mostanáig. Nemrégiben ugyanis elindult egy Let's encrypt nevű projekt, ami teljesen valid tanúsítványt állít ki nekünk, ráadásul teljesen ingyen! Nemrégiben én is kipróbáltam, és gondoltam egy bejegyzésben pár mondatban leírom a tapasztalataimat. Szóval ő itt a projekt weboldala: https://letsencrypt.org/getting-started/ . Itt pár mondatban olvashatunk róla, hogy miről is van szó. A tanúsítvány beszerzéséhez egy certbot (https://certbot.eff.org/) nevű cuccra van szükség. Itt az oldal elején ha kiválasztjuk az oprendszert és a szervert (nálam ez ugye Debian volt és Apache), már ki is tolja a pár soros telepítési útmutatót. Nem túl nagy ördöngösség. Van itt külön apache modul, meg automatizált telepítés, meg minden mi szem szájnak ingere, de mivel én szeretem látni, mi történik a szerveremen, a legfapadosabb webroot+certonly módot választottam. Ebben a módban annyit csinál a script, hogy megadjuk a domaint, és megadjuk, hogy a fájlrendszerben hol található hozzá a webroot (pl.: example.com és /var/www). A script ide rak majd egy fájlt, és valamit kommunikál a let's encrypt szerverrel, aki HTTP-n benéz, hogy tényleg ott van-e a cucc. Ezzel bizonyítjuk, hogy az adott webhely a mienk. Ha a dolog rendben lement, a /etc-ben a megadott helyen (a végén kiírja, hogy hol) létrejönnek a megfelelő tanúsítvány fájlok. Ezeket szépen beállítja az ember az apache konfigokban, és puff böngészőben már látja is, hogy biztonságos a HTTPS oldal. El lehet felejteni a self signed certificate-eket, és tejelni sem kell többet a tanúsítványokért. Arra még érdemes odafigyelni, hogy az így kapott certificate csak pár hónapig érvényes, így hosszabbítgatni kell, de ezt is megoldja a certbot. Csak be kell tennünk a cron.monthly-ba, és többet nem lesz vele gondunk. Szóval hajrá, Let's encrypt!

#blog

13 megjegyzés:

  1. Hadd egészítsem ki annyival, hogy a certbot csak egy a számos kliens közül, ami egzotikusabb környezetben nem feltétlenül állja meg a helyét. Viszont a letsencrypt lapján számos más klienst is ajánl.

    VálaszTörlés
  2. Kipróbáltam én is, jó volt. A hosszabbítás nem sikerült, sajnos.

    VálaszTörlés
  3. A Mediacenter a nála lévő oldalakra adja ezt, csak be kell állítani. Az Edge viszont erre még csak szürke lakatot ad. Zöldet csak az úgynevezett „kiterjesztett érvényesítésű” tanúsítványra ad, ami nem tudom mi, de nekem sem az ingyenesre, sem a vásároltra nem adja.

    Ha egy weboldalt átállítunk https-re, akkor át kell irányítani a http oldallekéréseket is a https-re, különben a régi linkekről a nem titkosított csatornát használó oldalunkra érkeznek továbbra is.

    A webmester eszközökben is fel kell venni a https oldalt (www-vel, és nélküle is), is elvégezni a szokásos beállításokat. Preferált domian stb.

    A https beállítása nem elég, ettől még simán láthatjuk azt, hogy az oldal nem biztonságos, ha a belső linkjei vagy a képei http:\\... módon vannak linkelve. Ezeket cserélni kell. WP plugin azt hiszem van rá. Statikus oldalakon meg egyszerű csere.

    VálaszTörlés
  4. Horváth Gyula​​ A letsencrypt erőssége éppen az, hogy EV tanúsítványt ad, tehát a tanúsítvány kibocsátója is rendelkezik CA tanúsítvánnyal.

    Nem tudom, hogy az általad említett, automatizált eszközök mit tesznek és hogyan, a saját magam hostolta froxlor admin is inkább akadály volt, mint segítség.

    A végeredmény az, hogy be lehet állítani, hogy zöld legyen a site, pedig nem statikus (subrion cms fut a weblapok alatt és Seafile a felhő fájlszerver alatt). Legalábbis nálam zöld a lakat ( http://www.klein-stark.net ).

    Valóban, azokat a képeket amiket nem biztonságos kapcsolaton keresztül hív be a lap, nem biztonságosként kezeli, de ezeket vagy ki lehet gyomlálni, vagy vegyes marad a lap.

    Nem mondom, hogy nincsenek álmatlan éjszakák amögött, hogy működjön, különösen a felhő fájlszerverünk okozott gondokat, mert nincs olyan pont a fájlrendszerben, amit URL-ként adna vissza, úgyhogy kellett csinálni neki egy külön http redirect szabályt, a másik nehézség az volt, amíg megértettem, hogy külön kell kérni tanúsítványt a www és a csupasz domainre ahhoz, hogy működjön.

    VálaszTörlés
  5. Ez bizony szürke. De az Edge böngészőben. Eleve arra írtam, hogy ott van valami plusz, amit nem tudom hogy lehet elérni. A Chrome, FF, Opera, az nem gond. Automatizált dolog, azaz WP-plugin nekem se kellett, mert a kevés oldalon átcseréltem a kép betöltéseket, meg belső hivatkozásokat kézzel. Az expanda.hu meg eleve statikus, ott végkép egyszerű a dolog.

    Amúgy a ratatoskot is visszateszem statikusra, egyszerűbb, gyorsabb.
    https://lh3.googleusercontent.com/9UJsYlt5PUUQ_7ktTCmcalxRO0f32Es4oiL4b0hsJbJWXjZ8uMz0VpUSjYgtqqU8Op4wKT_xfDMFGQ=s0

    VálaszTörlés
  6. Horváth Gyula​ Utánaolvasva úgy értelmezem, hogy az Edge root certificate kezelése más, a root tanúsítvány szolgáltató átállításával lehet elérni, hogy felismerje a tanúsítvány kiadóját.
    Pl itt: https://www.digicert.com/ssl-support/code-to-enable-green-bar.htm

    Az egyetlen plusz, amit még hozzá lehetne adni, a certificate transparency lenne, de ahhoz jelenleg csak patch van a webszerverekhez, még egyik sem tartalmazza szolgáltatásként.

    Hozzáteszem, hogy legalábbis az én limitált ismereteim szerint.

    VálaszTörlés
  7. Mondjuk edge-t kevesen használnak, meg ha jól értelmezem, ott is csak szürke, nem ez a nagy bazi piros képernyő, mint Chrome-on a self signed site-ok esetén, hogy "nem biztonságos", "jól gondold meg", stb.

    VálaszTörlés
  8. Aha, az Edge is azt írja, hogy biztonságos, csak nem annyira agyonra azonosított az oldal, mint amennyire a MS szeretné. Én is elég nyugodtan alszom ettől :-)

    Botond Zalai-Ruzsics az innen https://klein-stark.com/what_we_do/ nyíló oldalakon még kirak egy kis sárga figyelmeztetést. Valami ott még nem https-en keresztül van behívva.

    VálaszTörlés
  9. A certificate igénylése/validálása közben a certbot kliens egy brick webszervert indít, azzal ellenőriz le mindent.

    VálaszTörlés
  10. Csaba Sári standalone módban igen, de manuálisan kell lelőni bármit, ami a 80-as porton figyel. Webroot módban a futó webszervert használja.

    VálaszTörlés