Azure Web saytların müdafiəsi üçün ödənişsiz SSL sertifikatlar.

Bu məqalə "Step-by-Step" silsiləsinə daxildir

Təxminən, 4 ildir ki, X.509 sertifikatını pulsuz əldə etməyə imkan verən Let’s Encrypt sertifikat mərkəzi mövcuddur. 2018-ci ilin mart ayından etibarən, bütün sub-domainləri qorumağa imkan verən wildcard sertifikatları da dəstəklənir artıq.

DV (Domain Validation) tipli sertifikat 90 gün müddətinə verilir və hətta sertifikatı ödənişsiz şərtlərdə yeniləmək imkanı da vardır.

Daha yüksək səviyyəli sertifikatlar (Organization Validation или Extended Validation) isə, təəsüf ki, servis tərəfindən verilmir.

Let’s Encrypt ACME (Automated Certificate Management Environment) adlı bir protokol istifadə edir.

Əslində bu formada sertifikatları odənişsiz olaraq əldə etmək imkanı Electronic Frontier Foundation (EFF), Mozilla Foundation, Akamai, Cisco Systems kimi sponsorlar sayəsində mümkün olmuşdur.

Sertifikat 3 ay müddətinə verilir və avtomatik olaraq yenilənmə xüsusiyyəti olmadığından bunu manual etmək lazımdır. İstifadə etməyinizi təklif etdiyim Azure genişləndirilməsində, WebJob istifadə edərək sertifikatı yeniləyəcək daxili bir funksiya var, ancaq işləməsi üçün mütləq Blob storage yaratmalıyıq.

Avtomatik sertifikat yenilənməsini istəmiriksə konfiqurasiya daha da  asanlaşır.

Təklif edirəm ki, nisbətən çətin olan varianta baxaq. Çünki, bunu öyrəndikdən sonra avtomatik yenilənmə tələb olunmayan konfiqurasiyanı da rahat həyata keçirdə biləcəyik.

Beləliklə, əvvəlcə Storage Account yaradırıq:

Performance – standart olaarq təyin etmək kifayətdir. Replikasiya metodu LRS bəs edir, çünki coğrafi replikasiyalara ehtiyac yoxdur və bu storage müraciətlərin yalnız 3 ayda bir dəfə olmasını nəzərə alaraq, Access Tier olaraq “Cool” görsədirik.

Blob storage əlaqə üçün connection string lazım olacaq, hansı ki, aşağıda göstərilən location-dan əldə edə bilərsiniz:

Bu connection string-i  veb saytımızın yerləşdiyi WEB APP Application configurations-da custom olaraq daxil edirik.

Blob-u yaratdıqdan sonra isə, APP service extensions-u da əlavə etməliyik.

App Service’də Extensions bölməsinə daxil olduqdan sonra Add+ düyməsini basdıqda siz Azure LetsEncrypt olaraq 2 seçim görəcəksiniz. Bunlardan biri WebJobs ilə sertifikatı avtomatik olaraq yeniləyir, ikincisi isə yox. Biz blob yaratdığımıza görə WebJobs ilə seçim edə bilərik.

Apply etdikdən sonra, yaranmış Lets encrypt extensionuna daxil olaraq xüsusi bir portala yönləndiriləcəksiniz:

İndi hansı dəyərləri necə əldə edəcəyimizi anlayaq…

 Formanın yuxarı hissəsində ingilis dilində bir təsvir var, ancaq mən ekran görüntüləri və kiçik şərhlərlə izah etməyə çalışacağam.

Tenant, Subscription ID  və Tenant dəyərini Subscription bölməsinə daxil olmaqla əldə etmək olar.

Burada həm Subscription ID, həm də Directory görə bilərsiniz. Default Directory istədiyiniz Tenantdır.

ClientIDClientSecret bir az fərqlidir…

Bəzi vəzifələrin yerinə yetirilə biləcəyi bir növ hesab yaratmalıyıq – service principal. Bu hesabla Azure-a daxil ola bilməzsiniz. Yalnız bəzi daxili vəzifələri yerinə yetirmək üçün nəzərdə tutulmuşdur.

Bu service principal, Azure Active Directory – App Registrations – New Registration bölməsinə daxil olaraq yaratmalıyıq:

 

Qeyd olunan xanaları müvafiq məlumat ilə doldurun və Register düyməsinə basın.

Yaradılmış tətbiqin məlumatlarından Application  ID-ni artıq götürmək mümkündür – bu, tələb olunan ClientID-dir.

Certificates and Secrets hissəsinə keçib hər hansı description daxil edikdən sonra isə bizə təqim ediləcək VALUE ClientSecret-dir.

Service principal yaradıldı, ancaq hüquqların əlavə edilməsi də lazımdır. Bunu etmək üçün, App Service yerləşdiyi resurs qrupuna keçərək Access Control İAM bölməsində, yeni yaradılmış Service Principal üçün Contributor Role assign etməliyik.

Indi formu doldurmaq üçün lazımi hüquqlarımız və bütün dəyərlərimiz var. ResourceGroupNameApp Service-in yerləşdiyi Resurs qrupun adıdır. ServicePlanResourceGroupName – sizin App Servis-in yerləşdiyi Servis plan-ın adıdır.

App Service-da Development Slots-dan istifadə etmirsinizsə, SiteSlotName dəyəri qeyd olunmaya bilər. Ancaq Update Application Settings yanındakı qutunu işarə etmək vacibdir.

 Tələb olunanların hamısını daxil etdikdən sonra Next düyməsini basdıqda, növbəti səhifədə Hostnames seçmək imkanı əldə edirik:

Sertifikat tələbini tamamladıqdan sonra Web sayta daxil olub sertifikatın yanındakı kilidi vuraraq işlədiyinə əmin ola bilərsiniz.

Səs: +10. Bəyənilsin Zəifdir

Müəllif: MirCeyhun Musayev

Şərh yazın