دليل المادة
هل سبق لك أن واجهت هذا الموقف؟ لقد قمتَ بإعداد خادم HestiaCP بعناية فائقة ، وأنشأتَ جميع النطاقات الفرعية، لتكتشف في النهاية أن عليكَ التقديم على شهادات SSL وتكوينها يدويًا واحدة تلو الأخرى؟ 🤯 هذا مُرهِق للغاية!
لا تقلق، سأعلمك اليوم حيلة لتفعيل شهادات SSL دفعة واحدة بنقرة واحدة . لا يقتصر الأمر على شهادات Let's Encrypt فحسب ، بل يشمل أيضًا تفعيل إعادة التوجيه التلقائي لبروتوكول HTTPS وبروتوكول HSTS (أمان النقل الصارم لبروتوكول HTTP) بشكل مباشر.
🔥 لماذا تفعيل SSL بكميات كبيرة؟
قد تفكر، "ألا يمكنني ببساطة النقر عليها يدويًا واحدة تلو الأخرى؟" بالطبع يمكنك ذلك، ولكن إذا كان لديك عشرات أو مئات النطاقات الفرعية ، فإن القيام بذلك يدويًا ليس أقل من تعذيب النفس!
تتمتع المعالجة الدفعية بالفوائد التالية:
✔ وفر الوقت:التنفيذ بنقرة واحدة، دون الحاجة إلى النقر يدويًا.
✔ تجنب الإغفالات:تقليل الأخطاء البشرية والتأكد من تأمين كافة المجالات الفرعية.
✔ فرض HTTPS:إعادة التوجيه تلقائيًا HTTP -> HTTPS، تحسين تحسين محركات البحث (SEO) نتيجة.
✔ تعزيز أمان HSTS:منع هجمات الرجل في المنتصف وجعل الموقع أكثر أمانًا.
💡 خطوات التشغيل المحددة
بعد ذلك، سنستخدم أداة سطر الأوامر المرفقة مع HestiaCP لكتابة برنامج نصي بسيط للتعامل بسهولة مع تكوين SSL لجميع النطاقات الفرعية.

📝 الخطوة 1: الحصول على قائمة بالنطاقات الفرعية
افترض أن المجال الأساسي الخاص بك هو chenweiliang.comلقد قمت بإضافة العديد من المجالات الفرعية، على سبيل المثال:
en.chenweiliang.comru.chenweiliang.comla.chenweiliang.comlv.chenweiliang.com
في البرنامج النصي، نحتاج فقط إلى الاحتفاظ بقائمة من بادئات النطاق الفرعي، على سبيل المثال:
SUBDOMAINS="en ru la lv"
سنقوم لاحقًا بالمرور على هذه المجالات الفرعية والتقدم بطلب للحصول على شهادات SSL واحدة تلو الأخرى.
📜 الخطوة 2: اكتب نصًا برمجيًا لتمكين شهادات SSL على دفعات
يوفر HestiaCP أداة سطر أوامر ، تسمح لنا بتنفيذ عمليات متعلقة بـ SSL باستخدام الأوامر الثلاثة التالية:
v-add-letsencrypt-domain→ التقدم بطلب للحصول على شهادة SSLv-add-web-domain-ssl-force→ فرض HTTPSv-add-web-domain-ssl-hsts→ تمكين HSTS
النص البرمجي الكامل كما يلي (انسخه ونفذه مباشرة) :
#!/bin/bash
# HestiaCP 用户名
USER="youruser"
# 你的主域名
DOMAIN="chenweiliang.com"
# 需要启用 SSL 的子域名前缀
SUBDOMAINS="en ru la lv"
# 遍历每个子域名,依次开启 SSL
for SUB in $SUBDOMAINS
do
FULL_DOMAIN="$SUB.$DOMAIN"
echo "🚀 在启用 $FULL_DOMAIN 的 SSL 配置..."
# 申请 Let's Encrypt 证书
v-add-letsencrypt-domain $USER $FULL_DOMAIN
if [ $? -ne 0 ]; then
echo "❌ 错误:获取 $FULL_DOMAIN SSL 证书失败(可能触发 Let's Encrypt 429 限流),请稍后重试。"
continue
fi
# 强制 HTTPS 重定向
v-add-web-domain-ssl-force $USER $FULL_DOMAIN
# 启用 HSTS(HTTP 严格传输安全)
v-add-web-domain-ssl-hsts $USER $FULL_DOMAIN
echo "✅ $FULL_DOMAIN SSL 配置完成!"
done
echo "🎉 所有子域名 SSL 配置操作结束!"
🚀 الخطوة 3: تنفيذ البرنامج النصي
الآن بعد أن تم كتابة النص، فلنبدأ في تشغيله!
1️⃣ حفظ البرنامج النصي باسم enable_ssl.sh
2️⃣ منح أذونات التنفيذ:
chmod +x enable_ssl.sh
3️⃣ تشغيل البرنامج النصي :
./enable_ssl.sh
بعد ذلك، يمكنك أن ترى أنه يتم تطبيق شهادات SSL لجميع النطاقات الفرعية وتفعيلها تلقائيًا!
⚠ ملاحظات
؟؟؟؟ حول الحد الحالي لـ Let's Encrypt (خطأ 429)
دعونا تشفير تحديد عدد طلبات الشهادة لكل عنوان IP خلال ساعة واحدةإذا قمت بتكوين عدد كبير جدًا من المجالات الفرعية في وقت واحد، فقد تواجه خطأ 429.
✅ اضغط على الرابط أدناه لعرض الحل ▼
- التقديم على دفعات، تشغيل عدد قليل من المجالات الفرعية في وقت واحد.
- استخدام نقطة نهاية ACME مختلفة(على سبيل المثال كلودفلاري طلب شهادة واجهة برمجة التطبيقات (API).
- انتظر لمدة ساعة وحاول مرة أخرى.
؟؟؟؟ تحقق مما إذا كان HestiaCP قد قام بتثبيت شهادة SSL بشكل صحيح
إذا وجدت فشل تكوين SSL، يمكنك التحقق من ذلك يدويًا:
v-list-web-domain $USER yoursubdomain.chenweiliang.com
إلق نظرة SSL هل هو المجال yesإذا لم يكن الأمر كذلك، فستحتاج إلى تمكينه يدويًا.
🎯الخاتمة
تفعيل شهادات SSL بشكل جماعي ليس بالأمر الصعب؛ فالمفتاح هو استخدام الطريقة الصحيحة. باستخدام أدوات سطر الأوامر ونصوص البرمجة النصية في HestiaCP ، يمكنك تهيئة HTTPS لجميع النطاقات الفرعية بنقرة واحدة ، مما يحقق الكفاءة والأمان معًا.
💡هذا لن يوفر لك الكثير من الوقت فحسب، بل سيحسن أيضًا من درجة تحسين محركات البحث وأمان موقعك الإلكتروني ، فلماذا لا؟
جربه الآن وأضف حماية HTTPS إلى النطاقات الفرعية الخاصة بك لجعلها أكثر أمانًا واحترافية! 🚀
نأمل أن تكون المقالة "كيفية تفعيل شهادات SSL دفعة واحدة (بما في ذلك إعادة توجيه HTTPS وHSTS) لنطاقات HestiaCP الفرعية؟" المنشورة على مدونة Chen Weiliang ( https://www.chenweiliang.com/ ) مفيدة لك.
لا تتردد في مشاركة رابط هذه المقالة: https://www.chenweiliang.com/cwl-32612.html

