الاتصال بخادم VDS عبر SSH: PuTTY والطرفية والمفاتيح
دليل شامل للاتصال بخادم Linux VDS عبر SSH: PuTTY، الطرفية، المصادقة بالمفتاح، إنشاء قاعدة تصفية Path Panel، تغيير المنفذ ونصائح الأمان الأساسية.
تثبيت شهادة SSL/TLS مجانية باستخدام Let's Encrypt وCertbot على Nginx وApache. التجديد التلقائي وإعداد HTTPS وحل المشكلات الشائعة.
تقوم شهادات SSL/TLS بتشفير الاتصال بين خادم الويب والزوار. أصبح HTTPS ضرورياً اليوم لتحسين محركات البحث وثقة المتصفح وأمان المستخدم. توفر Let's Encrypt شهادات مجانية وآلية ومفتوحة المصدر.
SSL (طبقة المقابس الآمنة) وخلفه الحديث TLS (أمان طبقة النقل) هما بروتوكولان تشفيريان لتأمين البيانات عبر الشبكة. عند استخدام HTTPS:
تُعلّم المتصفحات الحديثة مواقع HTTP بـ"غير آمن". تستخدم Google HTTPS كعامل ترتيب. على خوادم REXE، تثبيت SSL مجاني وسهل.
Certbot هو الأداة الرسمية للحصول على شهادات Let's Encrypt وتجديدها تلقائياً.
# تحديث النظام
sudo apt update && sudo apt upgrade -y
# تثبيت Certbot مع إضافة Nginx
sudo apt install certbot python3-certbot-nginx -y
# لـ Apache
sudo apt install certbot python3-certbot-apache -y
# إضافة مستودع EPEL
sudo dnf install epel-release -y
# تثبيت Certbot
sudo dnf install certbot python3-certbot-nginx -y
# تثبيت snapd
sudo apt install snapd -y
# تثبيت Certbot عبر snap
sudo snap install --classic certbot
# إنشاء رابط رمزي
sudo ln -s /snap/bin/certbot /usr/bin/certbot
# التحقق من الإصدار
certbot --version
قبل الحصول على الشهادة:
# التحقق من تحليل النطاق
nslookup example.com
# التحقق من حالة جدار الحماية
sudo ufw status
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# الحصول على الشهادة وإعداد Nginx تلقائياً
sudo certbot --nginx -d example.com -d www.example.com
# الحصول على الشهادة فقط (إعداد يدوي)
sudo certbot certonly --nginx -d example.com -d www.example.com
# شهادة Wildcard (تتطلب تحقق DNS)
sudo certbot certonly --manual --preferred-challenges dns -d "*.example.com" -d example.com
# إعادة توجيه HTTP إلى HTTPS
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$server_name$request_uri;
}
# كتلة خادم HTTPS
server {
listen 443 ssl http2;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
add_header Strict-Transport-Security "max-age=15768000" always;
root /var/www/example.com/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
# اختبار الإعداد
sudo nginx -t
# إعادة تحميل Nginx
sudo systemctl reload nginx
# تفعيل وحدة SSL
sudo a2enmod ssl
sudo a2enmod rewrite
# الحصول على الشهادة مع إضافة Apache
sudo certbot --apache -d example.com -d www.example.com
<VirtualHost *:443>
ServerName example.com
DocumentRoot /var/www/example.com
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
Header always set Strict-Transport-Security "max-age=15768000"
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>
شهادات Let's Encrypt صالحة لمدة 90 يوماً. يُعدّ Certbot مؤقتاً لـ systemd أو مهمة cron للتجديد التلقائي.
# اختبار التجديد التلقائي
sudo certbot renew --dry-run
# التحقق من حالة المؤقت
sudo systemctl status certbot.timer
# التجديد اليدوي
sudo certbot renew
# إعادة تحميل Nginx بعد التجديد
sudo certbot renew --post-hook "systemctl reload nginx"
# تعديل crontab
sudo crontab -e
# الفحص مرتين يومياً
0 0,12 * * * certbot renew --quiet --post-hook "systemctl reload nginx"
# سرد جميع الشهادات
sudo certbot certificates
# التحقق من تاريخ انتهاء الصلاحية
echo | openssl s_client -connect example.com:443 2>/dev/null | openssl x509 -noout -dates
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo systemctl status nginx
nslookup example.com 8.8.8.8
dig example.com +short
curl -4 ifconfig.me
تطبّق Let's Encrypt حدوداً للمعدل: 5 محاولات فاشلة في الساعة. استخدم --staging للاختبار.
# بيئة الاختبار (بدون حدود)
sudo certbot --nginx --staging -d example.com
مع Let's Encrypt وCertbot، يستغرق تثبيت شهادة SSL/TLS بضع دقائق فقط. يُزيل التجديد التلقائي القلق من انتهاء صلاحية الشهادة. استخدام HTTPS على خوادم REXE أمر بالغ الأهمية لكل من الأمان وأداء تحسين محركات البحث.
نعم، Let's Encrypt مجاني تماماً. الشهادات صالحة لمدة 90 يوماً ويتم تجديدها تلقائياً بواسطة Certbot. الفرق الوحيد عن الشهادات التجارية هو عدم توفر التحقق من المنظمة (OV) أو التحقق الموسّع (EV).
تتطلب شهادات Wildcard (*.example.com) التحقق عبر DNS: 'sudo certbot certonly --manual --preferred-challenges dns -d "*.example.com"'. يوفر Certbot قيمة سجل TXT تضيفها في مدير DNS الخاص بك.
يجدد Certbot الشهادات قبل 30 يوماً من انتهاء صلاحيتها. يتم الفحص مرتين يومياً عبر مؤقت systemd أو مهمة cron. شغّل 'sudo certbot renew --dry-run' لاختبار عملية التجديد.
نعم، باستخدام SAN (أسماء بديلة للموضوع): 'sudo certbot --nginx -d example.com -d www.example.com -d api.example.com'. يمكن لشهادة واحدة تغطية ما يصل إلى 100 نطاق.
امسح ذاكرة التخزين المؤقت للمتصفح. تأكد من إعداد إعادة توجيه HTTP إلى HTTPS (301) في Nginx/Apache. شغّل 'sudo nginx -t && sudo systemctl reload nginx'.
دليل شامل للاتصال بخادم Linux VDS عبر SSH: PuTTY، الطرفية، المصادقة بالمفتاح، إنشاء قاعدة تصفية Path Panel، تغيير المنفذ ونصائح الأمان الأساسية.
دليل خطوة بخطوة للاتصال بـ Windows Server VDS عبر RDP: الإعداد الكامل، تفعيل NLA للأمان، إنشاء قاعدة تصفية Path Panel واستكشاف الأخطاء وإصلاحها.
تغيير نظام تشغيل خادم VDS عبر لوحة REXE: نصائح النسخ الاحتياطي قبل التثبيت، توزيعات Linux المدعومة وإصدارات Windows Server المتاحة للتثبيت الآن.