LetsEncrypt-dən başqa ACME serverlərində susuz qalmış problemlərin səbəbini tapdı

Sebastyan Krause müəyyən oldu xidmətlə qəribə uyğunsuzluq mənbəyi Bypass skript susuzlaşdı, ACME protokolundan istifadə edərək TLS sertifikatlarının alınmasını avtomatlaşdırmaq üçün istifadə olunur. Həm istinad müştərisi, həm də uacme Bypass ilə işləyir, lakin susuzlaşdırılmır (daha doğrusu, bəzi həll yolları ilə də işləyirdi, lakin yalnız dns-1 rejimində).

Səbəb mənasız oldu: cavabı real olaraq JSON formatında təhlil etmək əvəzinə, susuzlaşdırma müəllifi Let's Encrypt xidmətinin xüsusi JSON çıxışının formatlaşdırma xüsusiyyətindən istifadə etdi və onu müntəzəm ifadədən istifadə edərək təhlil etdi. Lakin Bypass gözəl formatlaşdırılmamış, lakin kiçildilmiş JSON və istifadə olunanı qaytarır Müntəzəm ifadə işləmədi. Bu xidmət gələcəkdə xəbərdarlıq etmədən, tamamilə rəsmi protokol çərçivəsində qalaraq emissiya formatını dəyişdirərsə, bu yanaşma LetsEncrypt ilə bağlı problemləri istisna etmir.

Problemi müzakirə edərkən xarici JSON analizatorundan istifadə etmək təklif edildi, məsələn json_pp və ya jq (düzgün təhlil üçün boruya 'jq -r ".authorizations | .[]"' əlavə edin).
Bu yanaşmanın dezavantajı minimal və asanlıqla yoxlanıla bilən vasitələrdən istifadə ideyasının azaldılması, həmçinin səhvlərin idarə olunması ilə bağlı problemlərdir.

Susuzlaşdırılmış layihənin müəllifi (layihə bu yaxınlarda idi satıldı Apilayer GmbH) razılaşdı, JSON-u təhlil etmək böyük problemdir, lakin o, xarici təhlilçiləri əlavə etməyi yaxşı bir fikir hesab etmir, çünki skriptin əsas üstünlüklərindən biri xarici asılılıqlara bağlılığın olmamasıdır. O, hazırda məşğuldur, lakin yaxın bir neçə gün ərzində bütün diqqətini problemin həllinə həsr edəcəyinə ümid edir. Planlara JSON analizatorunun yenidən işlənməsi və ya qabıq dilində hazır təhlilçinin inteqrasiyası daxildir - JSON.sh.

Mənbə: opennet.ru

Добавить комментарий