AWS LetsEncrypt Lambda یا چرا من یک ارائه دهنده TLS سفارشی برای AWS با استفاده از OpenTofu و Go نوشتم

این روزها، تصور سیستم‌هایی که دارای نقاط پایانی API عمومی بدون محافظت از گواهی TLS هستند، چالش برانگیز است. چندین راه برای صدور گواهی وجود دارد:

  • گواهی‌های کارت عام پولی که می‌توان از هر ارائه‌دهنده بزرگ TLS خریداری کرد
  • گواهی‌های ریشه پولی که همه گواهی‌های پایین دستی را که توسط سیستم‌های PKI شرکت صادر می‌شوند، امضا می‌کنند
  • گواهینامه های رایگان صادر شده توسط ارائه دهندگان TLS مانند LetsEncrypt یا AWS Certificate Manager
  • گواهینامه های خودامضا، صادر شده توسط OpenSSL یا ابزار دیگری

در چارچوب این پست، من عمدتاً در مورد گواهینامه های رایگانی که می توانند در داخل AWS استفاده شوند صحبت خواهم کرد، اما نه تنها توسط سرویس های AWS. واضح است که اگر به طور انحصاری از سرویس های مدیریت شده AWS استفاده می کنید و الزامات امنیتی سختی ندارید، استفاده از هر چیزی غیر از مدیر گواهی AWS معنی ندارد. AWS Certificate Manager یک روش بسیار راحت و سریع برای صدور گواهی از طریق چالش های DNS یا HTTP ارائه می دهد. با این حال، اگر نیاز به استفاده از این گواهی‌ها خارج از سرویس‌های AWS (API Gateway، ALB، NLB، و غیره) دارید، با محدودیت‌های اساسی AWS مواجه هستید، مانند نمونه EC2 که Nginx را اجرا می‌کند و به فایل گواهی فیزیکی نیاز دارد. علاوه بر این، حتی اگر آن را درخواست کنید، مدیر گواهی AWS محتوای گواهی را نمایش نمی دهد.

در این مرحله زمان خوبی است تا به شما در مورد LetsEncrypt، به طور گسترده تر، یادآوری کنیم…

Source link