Let's Encrypt sertifikatlari uch oy davomida amal qiladi va shu sababli ularni muntazam ravishda yangilab turish zarur. Aksariyat administratorlar bu vazifani qo'lda bajarishga harakat qilishadi, ammo ertami-kechmi ular shu narsani unutib qo'yishadi va natijada saytda "ishonchsiz ulanish" xatosi paydo bo'ladi. Avtomatlashtirish esa bu muammoning ildizini kesib tashlaydi va ma'mur uxlab yotgan paytda ham sertifikat o'z-o'zidan yangilanib turadi. Sayt.uz buni asosiy infratuzilma vazifasi sifatida ko'radi va har bir mijoz uchun yangilash skriptini standart shaklda sozlab beradi.
Certbot renew buyrug'i qanday ishlaydi
Certbot dasturi sertifikatning amal qilish muddatini avtomatik ravishda tekshiradi va agar 30 kundan kam vaqt qolgan bo'lsa, yangi sertifikatni so'rab oladi. Buning uchun siz hech narsa qilishingiz shart emas โ shunchaki "certbot renew" buyrug'ini ishga tushiring va u barcha mavjud sertifikatlarni navbatma-navbat tekshirib chiqadi. Agar muddati hali yetib kelmagan bo'lsa, certbot uni o'tkazib yuboradi va "not due for renewal" deb yozadi. Bu xatti-harakat resurslarni tejaydi va Let's Encrypt serverlariga keraksiz murojaatlarni kamaytiradi.
Cron faylini to'g'ri sozlash
Ko'p administratorlar cronni "crontab -e" buyrug'i orqali sozlashadi, biroq biz "/etc/cron.d/certbot-renew" alohida fayl yaratishni tavsiya etamiz. Bu yondashuv tizimni qayta o'rnatishda yoki ko'chirishda sozlamalarni saqlab qolishni osonlashtiradi. Faylga "0 2,14 * * * root certbot renew --quiet --deploy-hook 'systemctl reload nginx'" qatorini yozsangiz, certbot kuniga ikki marta โ soat ikkida va o'n to'rtda ishga tushadi. Bu chastota Let's Encrypt rasmiy hujjatlarida tavsiya etilgan bo'lib, kechikishlar va xatoliklar holatida sertifikat hech qachon muddatidan o'tib ketmasligini ta'minlaydi.
Deploy-hook nima uchun kerak
Sertifikat yangilangandan keyin web-server uni qayta o'qishi shart, aks holda u eski versiya bilan ishlashda davom etadi. "--deploy-hook" parametri faqat sertifikat haqiqatan yangilangan paytdagina ishga tushadi va shu sababli xizmatni keraksiz qayta yuklash sodir bo'lmaydi. Agar siz Nginx ishlatayotgan bo'lsangiz, "systemctl reload nginx" buyrug'i yetarli, Apache uchun esa "systemctl reload apache2" yoki "systemctl reload httpd" mos keladi. Postfix yoki Dovecot kabi pochta xizmatlari ham sertifikatdan foydalanayotgan bo'lsa, ularni ham qayta yuklashni unutmang.
Cron natijalarini kuzatish va jurnal
Avtomatlashtirilgan tizimning eng katta muammosi โ bu nimadir ishlamay qolganda hech kim bilmasligi. Shu sababli cron chiqishini "/var/log/letsencrypt/cron.log" fayliga yo'naltirishni va bu faylni haftalik ko'rib chiqishni tavsiya etamiz. Yana yaxshiroq variant โ natijani administratorga elektron pochta orqali yuborish. Buning uchun cron faylida "MAILTO=admin@sayt.uz" qatorini qo'shing va xato yuz bersa, sizga darhol xabar keladi. Ba'zi tashkilotlar Telegram bot orqali ogohlantirishlarni qabul qilishni afzal ko'rishadi va certbot bunga ham --post-hook orqali moslasha oladi.
Sayt.uz amaliyot
Sayt.uz mijozlarining 92 foizi Let's Encrypt sertifikatidan foydalanadi va biz har bir hosting akkauntida avtomatik yangilash cronini standart sifatida o'rnatib qo'yganmiz. Mijoz uchun bu bepul xizmat va u sertifikatga umuman e'tibor qaratishi shart emas. Wildcard sertifikatlar uchun avtomatik yangilash xizmati alohida sozlanadi va uning narxi yiliga 290 000 so'm. Korporativ mijozlar uchun DV/OV sertifikatlarning yangilash eslatmasi 60 kun oldin Telegram va elektron pochta orqali kelib turadi, bu esa sertifikat uzayishini hech qachon o'tkazib yubormaslikka yordam beradi.