فعال‌سازی SSL رایگان و HTTPS در دایرکت ادمین

اگر به تازگی وب‌سایتی را راه‌اندازی کرده‌اید یا قصد مهاجرت از HTTP به HTTPS را دارید، اولین و مهم‌ترین گامی که باید بردارید، فعال سازی SSL رایگان در دایرکت ادمین است. این گواهی نه‌تنها اعتماد کاربران را جلب می‌کند، بلکه به‌صورت مستقیم بر رتبه‌بندی سئوی شما (به‌ویژه Core Web Vitals) تأثیرگذار است. خوشبختانه، با استفاده از DirectAdmin و گواهی رایگان و معتبر Let’s Encrypt، این فرآیند بسیار ساده و سریع انجام می‌شود.

این راهنما یک نقشه راه عملیاتی برای شماست تا در کمترین زمان ممکن، بدون نیاز به دانش فنی عمیق، امنیت اتصال وب‌سایت خود را تضمین کرده و قفل سبز HTTPS را در مرورگر کاربران نمایش دهید. ما تمامی مراحل، از بررسی پیش‌نیازهای اولیه DNS تا رفع رایج‌ترین خطاهای فنی و اجباری کردن HTTPS را پوشش خواهیم داد.

پیش‌نیازها و چک‌لیست سریع

قبل از اینکه فعال‌سازی گواهی Let’s Encrypt را شروع کنید، مطمئن شوید که زیرساخت فنی دامنه شما آماده است. نادیده‌گرفتن هر یک از این موارد، منجر به شکست در فرآیند صدور گواهی (Challenge Failed) می‌شود.

تنظیم درست رکوردهای DNS

حیاتی‌ترین پیش‌نیاز این است که رکورد A (و در صورت استفاده از IPv6، رکورد AAAA) دامنه اصلی و زیردامنه‌هایی که می‌خواهید برای آن‌ها گواهی بگیرید (مانند www.yourdomain.com)، به‌درستی به آدرس IP سرور DirectAdmin شما اشاره کنند.

  • اگر از Cloudflare استفاده می‌کنید: مطمئن شوید که حالت پروکسی (ابر نارنجی) در مرحله نصب SSL خاموش (خاکستری) باشد تا Let’s Encrypt بتواند مستقیماً سرور شما را ببیند. پس از نصب موفقیت‌آمیز، می‌توانید مجدداً آن را فعال کنید.

فعال بودن CAA (در صورت وجود: اجازه به letsencrypt.org)

رکورد CAA (Certification Authority Authorization) به شما اجازه می‌دهد مشخص کنید که کدام مرجع گواهی (CA) مجاز است برای دامنه شما گواهی صادر کند. اگر این رکورد را در DNS خود تنظیم کرده‌اید، باید اجازه صدور به Let’s Encrypt را اضافه کنید.

نوع رکورد

نام

مقدار

CAA

@ (یا دامنه)

0 issue "letsencrypt.org"

همسان‌سازی زمان سرور (NTP)

تأخیر زمانی (Clock Skew) بین DirectAdmin و مرجع صدور گواهی (Let’s Encrypt) می‌تواند باعث خطای اعتبارسنجی شود. سرور شما باید زمان دقیق جهانی را گزارش دهد. معمولاً ادمین‌های سرور VPS/اختصاصی با استفاده از پروتکل NTP این مورد را چک می‌کنند، اما در هاست اشتراکی، این مسئولیت بر عهده میزبان است.

باز بودن پورت‌های ۸۰ و ۴۴۳

پروتکل ACME (که Let’s Encrypt از آن استفاده می‌کند) برای اعتبارسنجی دامنه شما به پورت‌های استاندارد وب نیاز دارد:

  1. پورت ۸۰ (HTTP): برای روش اعتبارسنجی HTTP-01، که رایج‌ترین روش است.
  2. پورت ۴۴۳ (HTTPS): برای اتصال امن پس از نصب و همچنین برای تست‌های ثانویه.

اگر فایروال (مانند CSF) روی سرور شما فعال است، مطمئن شوید این دو پورت برای دسترسی عمومی باز باشند.

چک‌لیست قبل از فعال‌سازی Let’s Encrypt

وضعیت

وظیفه

رکوردهای A/AAAA دامنه به IP سرور DirectAdmin اشاره دارند.

کش DNS (در صورت تغییر) پاک شده و رکوردهای جدید منتشر شده‌اند.

CAA در صورت وجود، به letsencrypt.org اجازه صدور داده است.

پورت‌های ۸۰ و ۴۴۳ در فایروال سرور باز هستند.

در صورت استفاده از Cloudflare، پروکسی موقتاً غیرفعال شده است.

نام‌های کاربری و رمزهای عبور DirectAdmin در دسترس هستند.

فعال‌سازی SSL رایگان Let’s Encrypt در DirectAdmin

Let’s Encrypt چیست؟ Let’s Encrypt یک CA رایگان است که گواهی‌های DV (Domain Validated) صادر می‌کند و از پروتکل ACME برای اتوماسیون استفاده می‌نماید

مسیر دسترسی در پنل (User Level → Domain Setup → SSL Certificates)

به پنل DirectAdmin وارد شوید. در بخش Account Manager، روی Domain Setup کلیک کنید، دامنه مورد نظر را انتخاب کرده و سپس SSL Certificates را باز کنید.

انتخاب Let’s Encrypt و تیک دامنه/ساب‌دامنه‌ها (+ www)

گزینه “Free & automatic certificate from Let’s Encrypt” را انتخاب کنید. دامنه اصلی، www و ساب‌دامنه‌ها را تیک بزنید. برای Wildcard، تیک Wildcard را بزنید.

انتخاب HTTP-01 (پیش‌فرض) و نکات DNS-01 برای Wildcard

چالش پیش‌فرض HTTP-01 است که از پورت 80 استفاده می‌کند. برای Wildcard، DNS-01 را انتخاب کنید که نیاز به TXT record دارد.

نصب و صدور گواهی (تصاویر مراحل)

روی Save کلیک کنید. DirectAdmin گواهی را صادر و نصب می‌کند. پیام موفقیت ظاهر می‌شود.

نکته: در Apache، گواهی در /etc/httpd/conf/ssl نصب می‌شود؛ در Nginx/OpenLiteSpeed، کانفیگ متفاوت است اما DirectAdmin آن را مدیریت می‌کند. منبع

مراحل سریع (شماره‌دار):

  1. ورود به DirectAdmin.
  2. انتخاب دامنه در Domain Setup.
  3. رفتن به SSL Certificates.
  4. انتخاب Let’s Encrypt.
  5. تیک دامنه‌ها و Save.
  6. منتظر صدور (معمولاً کمتر از 1 دقیقه).
  7. بررسی نصب موفق.

اجبار HTTPS (Force HTTPS)

Force HTTPS چیست؟ اجبار به ریدایرکت HTTP به HTTPS برای امنیت بیشتر.

فعال‌سازی «Force SSL with HTTPS redirect» (اگر گزینه دارد)

در SSL Certificates، تیک “Force SSL with HTTPS redirect” را بزنید و Save کنید.

ریدایرکت 301 در .htaccess (نمونه قواعد)

برای Apache، در .htaccess اضافه کنید:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

برای حذف اسلش یا WWW:

RewriteCond %{REQUEST_URI} /+$
RewriteRule ^(.*)/+$ $1 [R=301,L]

فعال‌سازی HSTS (با احتیاط؛ ذکر ریسک قفل‌شدن)

HSTS مرورگر را مجبور به استفاده همیشه از HTTPS می‌کند. در .htaccess:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" env=HTTPS

ریسک: اگر گواهی منقضی شود، سایت قفل می‌شود. ابتدا بدون includeSubDomains تست کنید.

تمدید خودکار (Auto-Renewal)

گواهی‌های Let’s Encrypt تنها ۹۰ روز اعتبار دارند. خوشبختانه، DirectAdmin به‌طور کامل فرآیند تمدید را به‌صورت خودکار مدیریت می‌کند.

بازه تمدید

DirectAdmin معمولاً در روزهای ۶۰ تا ۸۰ پس از صدور، تلاش برای تمدید خودکار گواهی را آغاز می‌کند (یعنی زمانی که کمتر از ۳۰ روز از اعتبار گواهی باقی مانده است). این فرآیند توسط یک کران جاب (Cron Job) سیستمی انجام می‌شود.

پیش‌نیازها برای تمدید موفق

برای اینکه تمدید خودکار با موفقیت انجام شود، دقیقاً به همان پیش‌نیازهای اولیه نیاز دارید:

  1. دسترسی به پورت ۸۰/۴۴۳: سرور Let’s Encrypt باید بتواند در زمان تمدید، چالش اعتبارسنجی را از طریق پورت ۸۰ یا ۴۴۳ انجام دهد.
  2. عدم تغییر مسیرهای عجیب: اگر ریدایرکت‌های پیچیده یا چالش‌برانگیزی (مثل ریدایرکت‌های موقت) روی دامنه اصلی خود اعمال کرده باشید، ممکن است ربات‌های تمدید Let’s Encrypt در دسترسی به پوشه .well-known با مشکل مواجه شوند.

بررسی لاگ‌ها در DirectAdmin

در /var/log/directadmin/letsencrypt.log بررسی کنید.

پیکربندی پیشرفته

گواهی Wildcard با DNS-01

اگر در مراحل نصب، گزینه Wildcard را تیک زده باشید، DirectAdmin از روش DNS-01 استفاده می‌کند. در این روش، نیازی به باز بودن پورت ۸۰ نیست؛ بلکه DirectAdmin یک رکورد TXT خاص را در DNS دامنه شما قرار می‌دهد تا مالکیت را تأیید کند. این روش برای دامنه‌های پشت Cloudflare (در حالت پروکسی فعال) بسیار مناسب است، هرچند ممکن است نیاز به انتظار طولانی‌تری برای انتشار رکورد DNS داشته باشید.

سازگاری با Cloudflare (Full/Full Strict) و نکات پروکسی

وقتی وب‌سایت شما پشت Cloudflare است، دو لایه SSL دارید:

  1. بین مرورگر کاربر و Cloudflare: که همیشه امن است (لایه اول).
  2. بین Cloudflare و سرور اصلی شما (DirectAdmin): که لایه دوم است و نصب SSL در DirectAdmin برای این لایه ضروری است.
حالت Cloudflareنیاز به SSL در DirectAdminریسک امنیتی
Flexibleاختیاری (Cloudflare اتصال HTTP را به سرور می‌فرستد)بالا (ناامن‌ترین حالت)
Fullالزامی (Cloudflare با SSL معتبر/نامعتبر به سرور وصل می‌شود)متوسط (اگر SSL دایرکت ادمین منقضی شود، کار می‌کند)
Full Strictالزامی (Cloudflare فقط با SSL معتبر Let’s Encrypt وصل می‌شود)پایین (امن‌ترین حالت)

بهترین حالت برای استفاده از Cloudflare، حالت Full Strict است که به نصب و تمدید گواهی Let’s Encrypt در DirectAdmin نیاز دارد. در این حالت، هنگام نصب گواهی، حتماً پروکسی Cloudflare را خاموش کنید و پس از نصب موفقیت‌آمیز، آن را روشن کنید.

رفع محتوای مختلط (Mixed Content) در وردپرس/لاراول

پس از فعال‌سازی HTTPS، ممکن است قفل سبز را نبینید یا مرورگر خطای “Not Secure” یا “Mixed Content” نمایش دهد. این مشکل زمانی رخ می‌دهد که صفحه اصلی شما از طریق HTTPS بارگذاری شده، اما منابعی مانند تصاویر، فایل‌های CSS یا جاوا اسکریپت هنوز از آدرس HTTP فراخوانی می‌شوند.

  • در وردپرس: بهترین راه‌حل استفاده از افزونه‌هایی مانند Really Simple SSL (برای رفع خودکار) یا اجرای دستور Search and Replace در دیتابیس برای تغییر آدرس‌های قدیمی http://yourdomain.com به https://yourdomain.com است.
  • در لاراول/سایر فریم‌ورک‌ها: از متدهای داخلی فریم‌ورک برای تولید آدرس‌های HTTPS استفاده کنید (مانند متد secure_url() در لاراول).

خطاهای رایج و رفع آن‌ها (Troubleshooting)

در اینجا رایج‌ترین خطاهایی که هنگام نصب SSL در DirectAdmin رخ می‌دهند، به همراه علت و راه‌حل ارائه شده‌اند:

خطا (Message Error)علت اصلیراه‌حل دقیق
404 in /.well-known/acme-challenge/سرور Let’s Encrypt نمی‌تواند به فایل اعتبارسنجی دسترسی پیدا کند.۱. پورت ۸۰ در فایروال بسته است. ۲. ریدایرکت عجیبی در فایل .htaccess جلوی دسترسی را گرفته است. ۳. DNS هنوز به سرور درست اشاره نمی‌کند.
CAA record forbids issuanceرکورد CAA در DNS شما، به Let’s Encrypt اجازه صدور نداده است.رکورد CAA را به 0 issue "letsencrypt.org" تغییر یا اضافه کنید.
Rate Limit Reachedدر بازه زمانی کوتاه (مثلاً یک هفته)، بیش از حد مجاز (معمولاً ۵ بار) تلاش ناموفق برای صدور گواهی داشته‌اید.صبر کنید تا محدودیت زمانی (معمولاً ۱ هفته) برداشته شود یا یک ساب‌دامین جدید برای تست استفاده کنید.
Challenge failed for domain.comخطای کلی در اعتبارسنجی (معمولاً به دلیل DNS یا فایروال).از ابزارهایی مانند curl برای تست دسترسی به دامنه از بیرون سرور استفاده کنید. (مثلاً: curl -I http://yourdomain.com)
The server requires a Private Key and/or Certificateخطا در DirectAdmin هنگام ذخیره یا تولید Private Key (نادر است).تلاش مجدد، یا در صورت تکرار، ریبوت سرویس وب‌سرور یا تماس با پشتیبانی.
 

نکات دیباگ فنی

اگر با خطای “Challenge Failed” روبرو شدید، می‌توانید به‌صورت دستی تست کنید که آیا DirectAdmin قادر به ایجاد مسیر اعتبارسنجی است یا خیر. یک فایل متنی تستی در مسیر public_html/.well-known/acme-challenge/test.txt ایجاد کنید و سپس در مرورگر، آدرس http://yourdomain.com/.well-known/acme-challenge/test.txt را باز کنید. اگر ۴۰۴ گرفتید، مشکل از پیکربندی وب‌سرور یا ریدایرکت‌هاست.

تست و اعتبارسنجی

ابتدا آدرس دامنه خود را به‌صورت دستی با https:// باز کنید.

  • قفل سبز (یا نماد قفل بسته) در نوار آدرس: یعنی گواهی به‌درستی نصب شده است.
  • خطای Mixed Content: اگر قفل سبز نیست، مرورگر را بازرسی (Inspect Element) کرده و در بخش Console دنبال خطاهای Mixed Content بگردید.

۲. بررسی با ابزارهای SSL Test و امنیت (Grade A)

برای ارزیابی قدرت گواهی و پیکربندی پروتکل‌های امنیتی سرور، از ابزارهای آنلاین معتبر استفاده کنید:

  • Qualys SSL Labs: آدرس وب‌سایت خود را در این ابزار وارد کنید تا یک گزارش دقیق از پیکربندی SSL/TLS سرور شما (شامل پروتکل‌های فعال، درجه رمزنگاری و درجه امنیتی کلی مانند Grade A) دریافت کنید.

۳. بررسی ریدایرکت‌های زنجیره‌ای

مطمئن شوید که ریدایرکت شما مستقیماً از HTTP به HTTPS انجام می‌شود و نه یک زنجیره از ریدایرکت‌ها (مثلاً: HTTP به WWW، و سپس WWW به HTTPS). ابزارهای بررسی SEO و Headless Browserها می‌توانند این زنجیره‌ها را شناسایی کنند.

سوالات متداول (FAQ)

تفاوت رایگان Let’s Encrypt با SSL پولی چیست؟

تفاوت اصلی در اعتبارسنجی (Validation) و گارانتی (Warranty) است. گواهی‌های Let’s Encrypt از نوع DV (Domain Validation) هستند و کاملاً خودکار صادر می‌شوند. گواهی‌های پولی (مانند OV و EV) دارای تأییدیه‌های سازمانی (شناسنامه شرکت) و بیمه مالی هستند که برای کسب‌وکارهای بزرگ و مالی حیاتی است. برای اکثر وب‌سایت‌ها، Let’s Encrypt کافی است.

آیا گواهی Wildcard لازم است؟

اگر قصد دارید بیش از دو یا سه ساب‌دامین (مثل blog.domain.com، shop.domain.com و test.domain.com) را در آینده امن کنید، Wildcard توصیه می‌شود. در غیر این صورت، برای دامنه اصلی و www، همان گواهی استاندارد کفایت می‌کند.

اگر هاست پشت Cloudflare است، چه کنم؟

بهترین حالت استفاده از Full Strict در Cloudflare است. برای نصب گواهی در DirectAdmin، حتماً موقتاً پروکسی (ابر نارنجی) را برای دامنه‌های اصلی خاموش کنید. پس از نصب موفقیت‌آمیز گواهی، پروکسی را دوباره فعال کنید.

تمدید خودکار نشد، چه کنم؟

احتمالاً فایروال پورت ۸۰ را بسته است یا یک ریدایرکت موقت (مثل ریدایرکت به یک دامنه دیگر) در زمان تمدید فعال شده بود. ابتدا بررسی کنید که دسترسی به پورت ۸۰ باز باشد. سپس به بخش SSL Certificates در DirectAdmin بروید و گزینه “Renew” را به‌صورت دستی انتخاب کنید.

آیا HSTS لازم است؟

برای امنیت بالاتر و جلوگیری از حملات SSL Stripping، HSTS توصیه می‌شود. با این حال، به دلیل ریسک بالای قفل شدن دامنه در صورت منقضی شدن SSL، اگر دانش فنی کافی برای مدیریت سرور ندارید، آن را فعال نکنید.

چرا بعد از فعال‌سازی SSL، قفل سبز ندارم؟

به احتمال زیاد با خطای Mixed Content روبرو هستید. این یعنی منابع (تصاویر، فونت‌ها، CSS) هنوز با HTTP فراخوانی می‌شوند. باید URLهای داخلی را در کدهای قالب و دیتابیس خود از HTTP به HTTPS تغییر دهید.

جمع‌بندی 

فعال‌سازی SSL رایگان Let’s Encrypt در DirectAdmin با پیروی از مراحل دقیق و گام‌به‌گام این راهنما، فرآیندی سریع و بدون دردسر است که امنیت و اعتبار وب‌سایت شما را به شدت افزایش می‌دهد. حتماً چک‌لیست پیش‌نیازها را قبل از شروع و ابزارهای اعتبارسنجی را پس از نصب (Qualys SSL Labs) بررسی کنید تا مطمئن شوید همه چیز بر اساس بالاترین استانداردهای امنیتی پیکربندی شده است.

اگر در هر یک از مراحل نصب یا رفع خطاهای فنی (Troubleshooting) با مشکلی مواجه شدید، به‌خصوص در ارتباط با پیکربندی فایروال سرور (مانند CSF/IPTables) یا خطاهای CAA، تیم فنی متخصص ما آماده است تا در کمترین زمان ممکن (معمولاً زیر ۱۰ دقیقه) SSL شما را فعال کرده و HTTPS را اجباری کند.

@m!n

امین هستم؛ مفاهیم فنی هاستینگ تا بهینه‌سازی سرعت رو ساده و عملی توضیح می‌دم. اینجا می‌نویسم تا با کمترین اصطلاحات پیچیده، بیشترین نتیجه رو…

مشاهده آخرین نوشته → تعداد مطالب: 19