فهرست مقاله
دفعه قبل حل شددرخواست برای نصب ناموفق بود. پیام خطا Let's Encrypt: AutoSSL Issue Failedپس از مشکل DNS، این گواهینامه رایگان SSL مشکلاتی برای حل دارد.
کنترل پنل CWPدر ابتدا به نظر می رسید که گواهی Let's Encrypt قبل از منقضی شدن به طور خودکار تمدید شده است، اما دیروز Let's Encrypt گواهی را به طور خودکار تمدید نکرد.SEOترافیک به شدت کاهش یافت، اما خوشبختانه پس از رفع مشکل می توان آن را بازیابی کرد.
Let's Encrypt چیست؟
Let's Encrypt یک مرجع صدور گواهی رایگان، خودکار و باز است که توسط گروه تحقیقاتی امنیت اینترنت غیرانتفاعی (ISRG) ارائه شده است.
به زبان ساده، HTTPS (SSL/TLS) را می توان با کمک گواهی صادر شده توسط Let's Encrypt به صورت رایگان برای وب سایت ما فعال کرد.
صدور/تمدید گواهیهای رایگان Let's Encrypt توسط اسکریپتها خودکار میشود. Let's Encrypt رسماً استفاده از مشتری Certbot را برای صدور گواهیها توصیه میکند.
در زیر آموزش نحوه درخواست گواهینامه رایگان Let's Encrypt SSL ارائه شده است
گواهینامه Let's Encrypt wildcard چیست؟
قبل از ظاهر شدن گواهیهای عام، Let's Encrypt فقط از ۲ گواهی پشتیبانی میکرد:
- گواهی یک دامنه: گواهی تنها شامل یک میزبان است.
- گواهی SAN: همچنین به عنوان گواهی نام دامنه شناخته می شود، یک گواهی می تواند شامل چندین میزبان باشد (محدودیت Let's Encrypt 20 است).
برای تک تک کاربران، از آنجایی که هاست زیاد نیست، استفاده از گواهینامه های SAN اصلاً مشکلی ندارد، اما برای شرکت های بزرگ مشکلاتی وجود دارد:
- تعداد زیادی ساب دامنه وجود دارد و ممکن است به مرور زمان نیاز به یک هاست جدید باشد.
- دامنه های ثبت شده زیادی نیز وجود دارد.
برای شرکتهای بزرگ، گواهیهای SAN ممکن است نیازها را برآورده نکنند و همه میزبانها در یک گواهی قرار میگیرند که با استفاده از گواهیهای Let's Encrypt (محدود 20) نمیتوان آن را ارضا کرد.
گواهی نامه های Wildcard گواهی هایی هستند که می توانند حاوی یک علامت عام باشند:
- به عنوان مثال *.example.com، *.example.cn،از * برای مطابقت خودکار همه زیر دامنه ها استفاده کنید.
- شرکت های بزرگ همچنین می توانند از گواهی نامه های wildcard استفاده کنند و یک گواهی SSL می تواند میزبان های بیشتری را قرار دهد.
تفاوت بین گواهی نامه و گواهی SAN
- گواهی نامه های Wildcard - گواهی نامه های Wildcard به طور گسترده برای محافظت از چندین زیر دامنه تحت یک نام دامنه کاملاً واجد شرایط منحصر به فرد استفاده می شود.مزیت این نوع گواهی این است که نه تنها مدیریت گواهی ها را آسان می کند، بلکه به شما کمک می کند تا هزینه های سربار خود را کاهش دهید.همیشه از زیر دامنه های فعلی و آینده شما محافظت می کند.
- گواهیهای SAN - گواهیهای SAN (همچنین به عنوان گواهیهای چند دامنه شناخته میشوند) برای ایمن کردن چندین دامنه با یک گواهی واحد استفاده میشوند.آنها با گواهی نامه های wildcard تفاوت دارند زیرا همه آنها را پشتیبانی می کنندنامحدودزیر دامنه ها SAN فقط از نام دامنه کاملاً واجد شرایط وارد شده در گواهی پشتیبانی می کند. گواهینامه های SAN قابل توجه هستند زیرا با استفاده از آنها می توانید بیش از 100 نام دامنه کاملاً واجد شرایط مختلف را با یک گواهی محافظت کنید؛ با این حال، میزان حفاظت به مرجع صدور گواهی بستگی دارد.
چگونه درخواست شودبیایید رمزگذاری کنیمگواهی عام؟
به منظور پیاده سازی گواهی نامه های wildcard، Let's Encrypt اجرای پروتکل ACME را ارتقا داده است و فقط پروتکل v2 می تواند گواهی نامه های wildcard را پشتیبانی کند.
به این معنا که هر کلاینت تا زمانی که از ACME v2 پشتیبانی میکند، میتواند برای گواهی wildcard درخواست دهد.
Certbot-Auto را دانلود کنید
wget https://dl.eff.org/certbot-auto chmod a+x certbot-auto ./certbot-auto --version
بیایید اسکریپت گواهی Wildcard را رمزگذاری کنیم
git clone https://github.com/ywdblog/certbot-letencrypt-wildcardcertificates-alydns-au cd certbot-letencrypt-wildcardcertificates-alydns-au chmod 0777 au.sh
بیایید اسکریپت تمدید زمان انقضای گواهینامه کارت عام را رمزگذاری کنیم
اسکریپت در اینجا سروری است که توسط nginx کامپایل و نصب می شود یا از طریق Docker، پروکسی https از طریق پروکسی میزبان یا میزبان متعادل کننده بار نصب می شود، به طور خودکار از گواهی SSL نسخه پشتیبان تهیه می کند و سرور پراکسی Nginx را مجددا راه اندازی می کند.
- توجه: اسکریپت در واقع از
./certbot-auto renew
#!/usr/bin/env bash cmd="$HOME/certbot-auto" restartNginxCmd="docker restart ghost_nginx_1" action="renew" auth="$HOME/certbot/au.sh php aly add" cleanup="$HOME/certbot/au.sh php aly clean" deploy="cp -r /etc/letsencrypt/ /home/pi/dnmp/services/nginx/ssl/ && $restartNginxCmd" $cmd $action \ --manual \ --preferred-challenges dns \ --deploy-hook \ "$deploy"\ --manual-auth-hook \ "$auth" \ --manual-cleanup-hook \ "$cleanup"
بپیوندید کرونتاب، فایل را ویرایش کنید
/etc/crontab
#证书有效期<30天才会renew,所以crontab可以配置为1天或1周 0 0 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && /home/pi/crontab.sh
بازسازی پیکربندی سرور CWP
در اینجا مراحل CWP برای بازسازی سرور nginx/apache آمده است:
مرحله 1: در سمت چپ کنترل پنل CWP، روی تنظیمات وب سرور → انتخاب سرورهای وب کلیک کنید ▼
مرحله 2:انتخاب کنید Nginx & Varnish & Apache ▼
مرحله 3:برای ذخیره و بازسازی پیکربندی، روی دکمه "ذخیره و بازسازی پیکربندی" در پایین کلیک کنید.
- وب سایت را رفرش کنید و خواهید دید که تاریخ انقضای گواهینامه SSL به روز شده است.
مطالعه طولانی:
وبلاگ امید چن ویلیانگ ( https://www.chenweiliang.com/ ) shared "Let's Encrypt به طور خودکار تمدید نمی شود؟برای کمک به شما، اسکریپت تمدید گواهی نامه Wildcard را به روز کنید.
به اشتراک گذاری لینک این مقاله خوش آمدید:https://www.chenweiliang.com/cwl-1199.html
به کانال تلگرام وبلاگ چن ویلیانگ خوش آمدید تا از آخرین به روز رسانی ها مطلع شوید!
📚 این راهنما حاوی ارزش بسیار زیادی است، 🌟این یک فرصت نادر است، آن را از دست ندهید! ⏰⌛💨
اگر دوست داشتید به اشتراک بگذارید و لایک کنید
اشتراک گذاری و لایک های شما انگیزه مستمر ما هستند!