منصوبے کے بارے میں

Lego ایک آزاد، مفت، اور اوپن سورس ACME (Automatic Certificate Management Environment) کلائنٹ اور لائبریری ہے جو Go زبان میں لکھی گئی ہے۔ اس کا بنیادی مقصد Let's Encrypt اور دیگر ACME-مطابق سرٹیفکیٹ اتھارٹیز (CAs) سے SSL/TLS سرٹیفکیٹ حاصل کرنے، تجدید کرنے، اور منسوخ کرنے کے عمل کو خودکار بنانا ہے، جس سے ہر ایک کے لیے HTTPS ممکن ہو سکے۔ اہم صلاحیتوں میں شامل ہیں: - **ACME پروٹوکول سپورٹ**: ACME v2 (RFC 8555) کو مکمل طور پر نافذ کرتا ہے، جس میں ALPN چیلنج (RFC 8737)، IP ایڈریس سرٹیفکیٹ (RFC 8738)، تجدید کی معلومات (RFC 9773)، اور پروفائلز ایکسٹینشن جیسی توسیعات شامل ہیں۔ - **وسیع DNS فراہم کنندہ انضمام**: خودکار DNS-01 چیلنج کی توثیق کے لیے 200 سے زیادہ DNS فراہم کنندگان کی حمایت کرتا ہے۔ اس میں بڑے کلاؤڈ فراہم کنندگان جیسے AWS Route 53، Google Cloud، Azure DNS، Cloudflare، DigitalOcean، Linode، Vultr، اور بہت سے دیگر، نیز روایتی رجسٹرار اور مخصوص فراہم کنندگان شامل ہیں۔ - **متعدد چیلنج کی اقسام**: HTTP-01، DNS-01، اور TLS-ALPN-01 چیلنجز کا مضبوط نفاذ۔ یہ خصوصی استعمال کے معاملات کے لیے حسب ضرورت چیلنج حل کرنے والوں کی بھی حمایت کرتا ہے۔ - **سرٹیفکیٹ کا انتظام**: صارفین CA کے ساتھ رجسٹر ہو سکتے ہیں، نئے سرٹیفکیٹ حاصل کر سکتے ہیں (بشمول موجودہ CSRs پر مبنی)، موجودہ سرٹیفکیٹ کی تجدید کر سکتے ہیں، اور ضرورت پڑنے پر انہیں منسوخ کر سکتے ہیں۔ یہ ٹول بطور ڈیفالٹ SAN (Subject Alternative Name) سرٹیفکیٹ اور CNAME ریکارڈز کی حمایت کرتا ہے۔ - **لچکدار استعمال**: Lego کو اسٹینڈ اکیلے کمانڈ لائن انٹرفیس (CLI) کے طور پر دستی یا اسکرپٹ شدہ سرٹیفکیٹ کے انتظام کے لیے استعمال کیا جا سکتا ہے، یا خودکار سرٹیفکیٹ ہینڈلنگ کے لیے دوسری ایپلیکیشنز میں Go لائبریری کے طور پر ضم کیا جا سکتا ہے۔ - **اضافی خصوصیات**: سرٹیفکیٹ بنڈلنگ، OCSP معاون افعال، اور مستقل DNS TXT ریکارڈ کی توثیق کے مسودوں کے لیے حمایت شامل ہے۔ Lego کو مضبوط اور لچکدار بنانے کے لیے ڈیزائن کیا گیا ہے، جو اسے انفرادی ڈویلپرز اور بڑے پیمانے پر انفراسٹرکچر آٹومیشن دونوں کے لیے موزوں بناتا ہے جہاں محفوظ HTTPS کنکشنز کی ضرورت ہوتی ہے۔