Hogyan automatizáljuk könnyedén az SSL telepítést Lego és Kubernetes segítségével

Automatizáld az SSL tanúsítványok kezelését zökkenőmentesen a Lego és a Kubernetes segítségével. Ismerd meg a hatékony telepítési gyakorlatokat…

Manuális SSL tanúsítvány megújítás kihívásai a Kubernetes-ben Let's Encrypttel

Az egyik partnerünk egy hatalmas rendszert futtat Kubernetes-ben. A Let's Encrypt-et használva adtunk ki SSL tanúsítványokat. Ezek a tanúsítványok 90 napig érvényesek, utána meg kell őket újítani és újat kiadni. Ezek a tanúsítványok a front-end alkalmazásokhoz voltak csatolva a Kubernetes Secrets-be. Mivel ezek a tanúsítványok manuálisan lettek kiadva, előfordulhatott, hogy lejártak, mivel a kibocsátó elfelejtette újra kiadni őket.

A Kubernetes titkainkat a gitlab tárolja. 'Sops' titkosítja ezeket a titkokat. Ez a tároló tartalmazta az aktuális tanúsítványokat, és ha új tanúsítványt adtak ki, de a kibocsátó elfelejtette azokat lecserélni a klaszter titkában, miközben a GitLab tárolóban nem tette meg, akkor a régi tanúsítvány felülírta volna az újat, amikor a titkokat a tárolóból bevetették. Ennek eredményeként a weboldalak megbízhatatlanná váltak és SSLHandshakeError-okat kezdtek el dobni. Ez nem az, amit szeretnénk.

Tanúsítvány műveletek egyszerűsítése: automatizálás és rugalmasság elérése Kubernetes-ben

Olyan megoldást szerettünk volna találni, ami automatikusan kiadja, kezeli és megújítja a tanúsítványokat, hogy elkerüljük a fent említett problémákat. Egyszerűen tudtunk új domaineket hozzáadni a hozzájuk tartozó tanúsítványok kezelésére, az automatizmus mellett.

A megoldás

A megoldás fő eleme a Lego. Ez egy Let's Encrypt kliens és ACME könyvtár Go nyelven írva.

Lego GitHub tároló

Legot használjuk Job-ként (tanúsítványok létrehozásához) és Cronjob-ként (a tanúsítványok megújításához) a Google GKE klaszterünkben. Tartós tárakat (Persistent Volumes) használunk, hogy a tanúsítványokat a szükséges Podokhoz csatoljuk. A tanúsítványok megszerzéséhez DNS szolgáltatót használunk. A Lego széles körben kompatibilis sok DNS szolgáltatóval. A munkafolyamat az, hogy ha új tanúsítványt vagy wildcard tanúsítványt kell kezelnünk, akkor először meghatározunk egy Kubernetes Job-ot, hogy a Lego futás parancssal létrehozza a tanúsítványt. A Lego DNS-01 kihívást old meg az adott szolgáltatóval. Ha pozitív eredmény születik, akkor a Lego létrehozza a tanúsítványt. Ezután csak meg kell adnunk egy Kubernetes Cronjob-ot a megújítási parancssal, hogy időszakosan ellenőrizze a tanúsítvány lejártát.

Az implementáció

Az implementáció a következő volt:

  1. Először létre kell hozni egy Tartós Tárat (Persistent Volume) és egy Tartós Tár Igényt (Persistent Volume Claim), hogy jelezzük Legonak, hova helyezze el a tanúsítványokat.

  2. Ezek után alkalmazzuk a PV-t és a PVC-t kubectl-lel.

  3. Ha ezek készen vannak, akkor megírhatjuk a Feladatot (Job).

apiVersion: batch/v1
kind: Job
metadata:
  name: lego-cert-creation
spec:
  ttlSecondsAfterFinished: 120
  template:
    spec:
      containers:
      - name: lego-cert-creation
        image: goacme/lego:<LEGO_VERSION>
        env:
          - name: DNSMADEEASY_API_KEY
            valueFrom:
              secretKeyRef:
                key: apiKey
                name: dnsmadeeasy-secret
          - name: DNSMADEEASY_API_SECRET
            valueFrom:
              secretKeyRef:
                key: secretKey
                name: dnsmadeeasy-secret
        args:
        - --accept-tos
        - --domains=<DOMAIN>
        - --email=<EMAIL>

ttlSecondsAfterFinished: A Feladat befejezését követően 120 másodperc múlva törlésre kerül.

  • <LEGO_VERSION>: A Lego verzió, amit használni szeretnél a Legóval

  • Környezet (Env): A környezet részben egy titkot használunk, amit a klaszterre telepítettünk, amely tartalmazza a szükséges adatokat ahhoz, hogy a Lego kommunikálni tudjon a DNS szolgáltatóval. DNSMadeEasy-t használunk, de más szolgáltatók más adatokat igényelhetnek ahhoz, hogy API-jukkal kommunikálhassanak.

  • argumentumok: — accept-tos: Az aktuális Let's Encrypt szolgáltatási feltételek elfogadását jelző kapcsoló. (alapértelmezett: false) — domainek: A tanúsítványhoz szükséges domain. Több domain esetén csak meg kell adnod egy –domains argumentumot minden domainhez. Itt használhatsz wildcard tanúsítványt is. — e-mail: Az e-mail, amelyet a regisztrációhoz és a helyreállításhoz használnak a Let's Encryptnél. — elérési út: A tárolási könyvtár (alapértelmezett: “./.lego”). Ez **/lego **mivel a PV-t ebbe az útba csatoltuk a konténeren belül. — dns: Az általad használt DNS szolgáltató.

  • futtatás: Fiók regisztrálása, majd tanúsítvány létrehozása és telepítése.

  1. A tanúsítvány megújítására szolgáló Cronjob hasonló a Feladathoz

apiVersion: batch/v1
kind: CronJob
metadata:
  name: lego-cert-renewal-cronjob
spec:
  schedule: 1 7 * * 1
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: lego-renewal
            image: goacme/lego:<LEGO_VERSION>
            env:
              - name: DNSMADEEASY_API_KEY
                valueFrom:
                  secretKeyRef:
                    key: apiKey
                    name: dnsmadeeasy-secret
              - name: DNSMADEEASY_API_SECRET
                valueFrom:
                  secretKeyRef:
                    key: secretKey
                    name: dnsmadeeasy-secret
            args: 
            - --accept-tos
            - --domains=<DOMAIN>
            - --email=<EMAIL>

  • Ütemezés (Schedule): Egy cron ütemezés. A feladatot minden hétfőn 7:01-kor futtatjuk.

  • Argumentumok: — megújítás (renew): Tanúsítvány megújítása. A Let's Encrypt tanúsítványok 90 napig érvényesek. Akkor újítja meg a tanúsítványt, ha az kevesebb mint 30 nap múlva lejár.

  1. A Cronjob alkalmazása után is meg kell győződnünk arról, hogy szolgáltatásaink ezeket a tanúsítványokat használják. Ennek eredményeként, ha sandbox API kulcsot és titkot használtam, nem működött, ezért ha ezt a megoldást valósítod meg, valódi hitelesítő adatokat kell használnod.

Következtetés

Ennek a megoldásnak a használatával automatikusan létrehozhatjuk és karbantarthatjuk az SSL tanúsítványokat. A jövőben nem lesznek problémák a lejárt tanúsítványok miatt. A Lego nagyon könnyen használható és széles körben támogatja a DNS szolgáltatókat.

Szerző: Csaba Ujvári

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

2024. jún. 20.

Keresési lekérdezés érvényesítése a React Router 6-tal és Yup-pal, valamint Typescript-tel

Érvényesíted a keresési lekérdezéseket a frontend appodban? A válasz „néha”, de ha a keresési lekérdezésre az alkalmazás bemeneteként gondolsz, meg fog változni a véleményed.

2024. jan. 28.

Hogyan válasszunk a monolit kód és a mikroszolgáltatások között

Fejtsd meg a mikroszolgáltatások kontra monolitikus kód kérdését: Válassz okosan egy zökkenőmentes fejlesztési út érdekében.

2024. jan. 28.

Weboldal vagy Webalkalmazás: Melyikre Van Szükséged?

Fejtsd meg a mikroszolgáltatások kontra monolitikus kód kérdését: Válassz okosan egy zökkenőmentes fejlesztési út érdekében.

2023. szept. 14.

Útmutató: Hogyan tartsuk naprakészen a dependency-ket a fejlesztés fokozott biztonsága és hatékonysága érdekében

Ismerd meg, milyen fontos a dependency-k naprakészen tartása a biztonságos és hatékony fejlesztési folyamat érdekében...

2022. szept. 14.

No Code Pro / Kontra

A kód nélküli megoldások szokatlan, forradalmi felfedezést és változásokat hoztak a technológiai szférában – különösen a programozás terén.

2022. aug. 14.

Íme néhány ok, amiért érdemes szoftvermérnökké válni

Igen, a szoftverfejlesztés jó szakma szinte bármilyen szempont alapján, beleértve a fizetést, az álláslehetőségek számát és az általános munkával való elégedettséget is...

2022. júl. 14.

Útmutató a Távmunkához a Tengerparton: Legjobb Tippek

Egy kis tervezésbe fektetett erőfeszítés kellemesebbé teszi az egész utazásodat. Ha önállóan vágsz neki az útnak, tervezz olyan útvonalat, ami figyelembe veszi az elérhetőségeket.

2022. jún. 14.

11 alapvető készség, amelyekre szükséged van ahhoz, hogy szoftverfejlesztővé válj 2022-ben

Főbb készségek, amelyeket a programozóknak és szoftverfejlesztőknek meg kell tanulniuk 2022-ben. Mi tesz kiemelkedővé egy programozót?

2023. aug. 16.

Hogyan valósítsuk meg a kérés érvényesítést az OAPI-Codegen és Go segítségével a stabil fejlesztés érdekében

Számos projektünk megköveteli a back-end és a front-end munkát is. Ha egy ügyfél RESTful API-kat szeretne tőlünk, akkor az OpenAPI 3 specifikációval kezdjük.

2023. aug. 31.

A legjobb módszer a szerver nélküli számítástechnika optimalizálására

Fedezd fel a Cloud Run legújabb funkcióit a zökkenőmentes telepítés és skálázás érdekében...

2023. nov. 16.

Fedezze fel, hogyan védheti meg weboldaladat a reCAPTCHA v3 és a Cloud Armor

Ismerd meg a fejlett botvédelmi stratégiákat reCAPTCHA v3 és Cloud Armor használatával. Védd meg webhelyét a CommIT Smart átfogó útmutatójával...

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Egyéb cikkek

2024. szept. 20.

Érzelmi Intelligencia az IT Projektmenedzsmentben

Az érzelmi intelligencia kulcsfontosságú az IT projektmenedzsmentben. Segíti a vezetőket abban, hogy jól irányítsák a csapatokat, és erősebb kapcsolatokat építsenek ki.

2024. okt. 20.

A kiváló vezetők előre mérlegelnek, nem csak reagálnak

Kész vagy a vezetői képességeid fejlesztésére? Fedezd fel, hogyan segíthet, ha nem csak reagálsz a kihívásokra, hanem előre is mérlegeled azokat.

2024. aug. 30.

Hogyan forradalmasítják a StemX szerkesztőink a jegyeladást

Fedezd fel, hogyan forradalmasítják a StemX szerkesztők a jegyeladást innovatív tervezőeszközeikkel!

AI becslés

Engedd meg, hogy szakértelmünkkel tökéletes megoldást nyújtsunk projektjeidhez!

Szeretnél pontos projektbecsléseket? AI-alapú alkalmazásunk segít okosabb tervezésben. Lépj kapcsolatba velünk még ma, és személyre szabott árajánlatot adunk üzleti igényeidnek megfelelően — gyorsan, megbízhatóan és céljaiddal összhangban.

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Lépj kapcsolatba velünk

Lépj kapcsolatba velünk!

Kérdésed van, vagy szeretnél többet megtudni arról, hogy mivel foglalkozunk a CommIT Smartnál? Szeretnénk veled beszélni! Akár kíváncsi vagy a munkánkra, akár csak beszélgetni szeretnél, ne habozz felkeresni. Csapatunk itt készen áll, hogy felvegye veled a kapcsolatot!

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.

Szenvedélyünk az innováció: a legújabb webtechnológiák, blokklánc és digitális megoldások fejlesztésében mindig kreatív megközelítést alkalmazunk.

A D&B tanúsítványt kizárólag kiváló hitelképességű vállalkozások kapják meg. A tanúsítvány megléte garantálja, hogy cégünkkel üzleti kapcsolatot létesíteni alacsony pénzügyi kockázattal jár.

© 2024 Commitsmart Kft. Minden jog fenntartva.