صدور خودکار گواهی SSL با استفاده از Acme.sh روی سرور از طریق DNS

16/12/2023 |
Loading...

عنوان: صدور خودکار گواهی SSL با استفاده از Acme.sh روی سرور اوبونتو

مقدمه: این آموزش شما را در فرآیند صدور خودکار گواهی SSL روی یک سرور اوبونتو با استفاده از Acme.sh راهنمایی می‌کند. گواهی‌های SSL برای ایمن‌سازی وبسایت‌ها و سرویس‌ها ضروری هستند و خودکارسازی صدور آنها می‌تواند در زمان و تلاش صرفه‌جویی کند. Acme.sh یک ابزار مبتنی بر شل است که عملکرد بهتری ارائه می‌دهد و از چندین API ارائه‌دهنده DNS پشتیبانی می‌کند، که آن را به انتخاب عالی برای خودکارسازی گواهی‌های SSL تبدیل می‌کند.

پیش نیازها:

  • سرور اوبونتو
  • نام دامنه
  • توکن API DNS

اصطلاحات نمونه:

مرحله 1 - نصب Acme.sh:

  1. به سرور اوبونتو خود وارد شوید.

  2. یک پنجره ترمینال باز کنید.

  3. مخزن Acme.sh را از GitHub کلون کنید:

    git clone https://github.com/acmesh-official/acme.sh.git
  4. به دایرکتوری Acme.sh بروید:

    cd ~/acme.sh
  5. Acme.sh را با آدرس ایمیل خود نصب کنید:

    ./acme.sh --install -m mail@example.com

    [email protected] را با آدرس ایمیل واقعی خود جایگزین کنید.

  6. مسیر نصب نمایش داده شده پس از اتمام نصب را یادداشت کنید.

مرحله 2 - اصلاح DNS خودکار:

  1. Acme.sh از چندین ارائه‌دهنده DNS پشتیبانی می‌کند. می‌توانید گزینه‌های موجود برای API DNS را در دایرکتوری dnsapi مخزن Acme.sh پیدا کنید:

    cd ~/acme.sh/dnsapi
  2. اگر مطمئن نیستید از کدام ارائه‌دهنده DNS استفاده کنید، به ویکی Acme.sh مراجعه کنید.

  3. برای این آموزش، از DNS هتزنر استفاده خواهیم کرد. توجه داشته باشید که کلیدهای API ارائه شده توسط ارائه‌دهندگان مختلف DNS ممکن است متفاوت باشد. ارائه‌دهنده‌ای را انتخاب کنید که بیشترین نیازهای شما را برآورده کند.

  4. کلید API را برای ارائه‌دهنده DNS خود از کنسول مربوطه دریافت کنید. در مورد DNS هتزنر، می‌توانید کلید API خود را در کنسول DNS هتزنر پیدا کنید.

  5. اسکریپت مربوط به ارائه‌دهنده DNS خود را در دایرکتوری dnsapi پیدا کنید. برای هتزنر، اسکریپت با نام dns_hetzner.sh نامگذاری شده است.

  6. می‌توانید توکن API را با ویرایش دستی اسکریپت اضافه کنید:

    nano ~/acme.sh/dnsapi/dns_hetzner.sh

    یا با استفاده از دستور export:

    export YOUR_Token="<token>"

    YOUR_Token را با متغیر استفاده شده در اسکریپت برای ارائه‌دهنده DNS خود و <token> را با توکن API واقعی خود جایگزین کنید.

  7. می‌توانید توکن API ذخیره شده را با اجرای دستور زیر مشاهده کنید:

    cat ~/.acme.sh/account.conf

مرحله 3 - صدور گواهی‌ها:

  1. به طور پیش‌فرض، Acme.sh از ZeroSSL به عنوان مرجع صدور گواهی (CA) استفاده می‌کند. اگر به CA خاصی مانند BuyPass.com CA نیاز دارید، مخزن رسمی Acme.sh در GitHub را برای گزینه‌های بیشتر بررسی کنید.

  2. از نسخه Acme.sh v3.0.6 به بعد، الگوریتم کلید پیش‌فرض ec-256 است، نه RSA2048. اگر CA شما فقط از RSA4096 و پایین‌تر پشتیبانی می‌کند، می‌توانید طول کلید را به عنوان -k 2048 در انتهای دستور برای صدور یک گواهی رایگان مشخص کنید.

  3. برای صدور گواهی SSL، دستور زیر را اجرا کنید:

    cd ~/acme.sh ./acme.sh --issue --dns dns_hetzner -d example.com -d *.example.com

    این دستور تأیید DNS خودکار را انجام می‌دهد. example.com را با نام دامنه خود جایگزین کنید و پرچم‌های -d را در صورت نیاز تنظیم کنید.

  4. پس از موفقیت‌آمیز بودن تأیید، می‌توانید گواهی‌های SSL را در مکان تعیین شده پیدا کنید. فایل‌های گواهی را با یک ویرایشگر متن باز کنید تا جزئیات را مشاهده کنید.

نتیجه‌گیری: در این آموزش، شما یاد گرفتید که چگونه با استفاده از Acme.sh روی یک سرور اوبونتو گواهی SSL صادر کنید. با دنبال کردن این دستورالعمل‌ها، می‌توانید به راحتی وبسایت‌ها و سرویس‌های خود را با گواهی‌های SSL ایمن کنید، در زمان صرفه‌جویی کنید و امنیت را افزایش دهید.

دریافت پیشنهادات و تخفیف‌های ویژه!

از جدیدترین تخفیف‌ها، آفرها و پیشنهادات ویژه باخبر شوید.

Update cookies preferences