The Groucho Marx Show: American Television Quiz Show - Book / Chair / Clock Episodes
جدول المحتويات:
- المتطلبات الأساسية
- تثبيت Certbot
- إنشاء مجموعة قوية Dh (ديفي هيلمان)
- الحصول على شهادة دعونا تشفير SSL
- التجديد التلقائي دعونا تشفير شهادة SSL
- استنتاج
Let's Encrypt هي المرجع المصدق الذي أنشأته مجموعة أبحاث أمان الإنترنت (ISRG). يوفر شهادات SSL مجانية عبر عملية مؤتمتة بالكامل تهدف إلى القضاء على إنشاء الشهادة يدويًا والتحقق من صحتها وتثبيتها وتجديدها.
الشهادات الصادرة من Let's Encrypt صالحة لمدة 90 يومًا من تاريخ الإصدار وموثوق بها من قبل جميع المتصفحات الرئيسية اليوم.
سيرشدك هذا البرنامج التعليمي خلال عملية الحصول على Let's Encrypt المجاني باستخدام أداة certbot في Debian 9. وسنعرض أيضًا كيفية تكوين Apache لاستخدام شهادة SSL الجديدة وتمكين HTTP / 2.
المتطلبات الأساسية
تأكد من استيفاء الشروط التالية قبل المتابعة مع هذا البرنامج التعليمي:
- تسجيل الدخول كمستخدم لديه امتيازات sudo. هل لديك اسم مجال يشير إلى خادم IP الخاص بالخادم العام. سوف نستخدم
example.com. مضيف ظاهري أباتشي لنطاقك. يمكنك اتباع هذه التعليمات للحصول على تفاصيل حول كيفية إنشاء واحد.
تثبيت Certbot
Certbot هي أداة كاملة المزايا وسهلة الاستخدام يمكنها أتمتة المهام للحصول على وتجديد شهادات Let's Encrypt SSL. يتم تضمين حزمة certbot في مستودعات دبيان الافتراضية.
قم بتحديث قائمة الحزم وتثبيت حزمة certbot باستخدام الأوامر التالية:
sudo apt update
sudo apt install certbot
إنشاء مجموعة قوية Dh (ديفي هيلمان)
يعد Diffie – Hellman key exchange (DH) طريقة لتبادل آمن لمفاتيح التشفير عبر قناة اتصال غير آمنة.
لإنشاء مجموعة جديدة من المعلمات DH 2048 بت:
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
إذا أردت ، يمكنك تغيير الحجم إلى 4096 بت ، ولكن في هذه الحالة ، قد يستغرق الجيل أكثر من 30 دقيقة اعتمادًا على إنتروبيا النظام.
الحصول على شهادة دعونا تشفير SSL
للحصول على شهادة SSL لنطاقنا ، سنستخدم المكون الإضافي Webroot الذي يعمل عن طريق إنشاء ملف مؤقت للتحقق من صحة النطاق المطلوب في دليل
${webroot-path}/.well-known/acme-challenge
. يقوم خادم Let's Encrypt بإرسال طلبات HTTP إلى الملف المؤقت للتحقق من أن المجال المطلوب يحل إلى الخادم حيث يتم تشغيل certbot.
ولجعل الأمر أكثر بساطة ، سنقوم بتعيين جميع طلبات HTTP الخاصة بـ
.well-known/acme-challenge
إلى دليل واحد ،
/var/lib/letsencrypt
.
الأوامر التالية تنشئ الدليل وتجعله قابلاً للكتابة لخادم Apache.
sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp www-data /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt
لتجنب تكرار الشفرة ، قم بإنشاء قصتي التكوين التاليين:
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 SSLHonorCipherOrder On Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" Header always set X-Frame-Options DENY Header always set X-Content-Type-Options nosniff # Requires Apache >= 2.4 SSLCompression off SSLUseStapling on SSLStaplingCache "shmcb:logs/stapling-cache(150000)" # Requires Apache >= 2.4.11 SSLSessionTickets Off SSLOpenSSLConfCmd DHParameters "/etc/ssl/certs/dhparam.pem"
يستخدم القصاصة أعلاه شرائح التقطيع الموصى بها من قبل Cipherli.st ، وتمكين OCSP Stapling ، HTTP Strict Transport Security (HSTS) ويفرض القليل من رؤوس HTTP التي تركز على الأمان.
قبل تمكين ملفات التكوين ، تأكد من
mod_ssl
كل من
mod_ssl
و
mod_headers
عن طريق إصدار:
sudo a2enmod ssl
sudo a2enmod headers
تمكين وحدة HTTP / 2 ، والتي ستجعل مواقعك أسرع وأكثر قوة:
sudo a2enmod
تمكين ملفات تكوين SSL عن طريق تشغيل الأوامر التالية:
sudo a2enconf letsencrypt
sudo a2enconf ssl-params
أعد تحميل تكوين Apache لتصبح التغييرات نافذة المفعول:
sudo systemctl reload apache2
استخدم أداة Certbot مع المكون الإضافي webroot للحصول على ملفات شهادة SSL:
sudo certbot certonly --agree-tos --email [email protected] --webroot -w /var/lib/letsencrypt/ -d example.com -d www.example.com
إذا تم الحصول على شهادة SSL بنجاح ، فسوف يقوم certbot بطباعة الرسالة التالية:
IMPORTANT NOTES: IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/example.com/fullchain.pem. Your cert will expire on 2019-01-17. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you lose your account credentials, you can recover through e-mails sent to [email protected]. - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF:
الآن وبعد أن أصبحت لديك ملفات الشهادة ، قم بتحرير تكوين المضيف الظاهري لنطاقك كما يلي:
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
ServerName example.com ServerAlias www.example.com Redirect permanent / https://example.com/ ServerName example.com ServerAlias www.example.com Protocols h2 http:/1.1 Redirect permanent / https://example.com/ DocumentRoot /var/www/example.com/public_html ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem # Other Apache Configuration
من خلال التكوين أعلاه ، فإننا نلزم HTTPS ونعيد التوجيه من www إلى إصدار غير www. تتردد في ضبط التكوين وفقًا لاحتياجاتك.
أعد تحميل خدمة Apache لتصبح التغييرات نافذة المفعول:
sudo systemctl reload apache2
افتح موقع الويب الخاص بك باستخدام
https://
، وستلاحظ رمز القفل الأخضر.

التجديد التلقائي دعونا تشفير شهادة SSL
شهادات تشفير دعونا صالحة لمدة 90 يوما. لتجديد الشهادات تلقائيًا قبل انتهاء صلاحيتها ، تنشئ حزمة certbot cronjob تعمل مرتين يوميًا وستقوم تلقائيًا بتجديد أي شهادة قبل 30 يومًا من انتهاء صلاحيتها.
بمجرد تجديد الشهادة ، يتعين علينا أيضًا إعادة تحميل خدمة Apache. إلحاق -
--renew-hook "systemctl reload apache2"
إلى ملف
/etc/cron.d/certbot
بحيث يبدو كما يلي:
0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew --renew-hook "systemctl reload apache2"
لاختبار عملية التجديد ، استخدم مفتاح
--dry-run
:
sudo certbot renew --dry-run
إذا لم تكن هناك أخطاء ، فهذا يعني أن عملية التجديد كانت ناجحة.
استنتاج
في هذا البرنامج التعليمي ، استخدمت شهادات العميل التابعة لـ Let's Encrypt ، للحصول على شهادات SSL لنطاقك. لقد أنشأت أيضًا قصاصات Apache لتجنب تكرار التعليمات البرمجية وتكوين Apache لاستخدام الشهادات. في نهاية البرنامج التعليمي ، قمت بإعداد cronjob لتجديد الشهادة تلقائيًا.
اباتشي ديبيان دعونا تشفير certbot sslهذا المنشور جزء من كيفية تثبيت LAMP Stack على سلسلة دبيان 9.
وظائف أخرى في هذه السلسلة:
• كيفية تثبيت Apache على Debian 9 • كيفية تثبيت PHP على Debian 9 • كيفية إعداد مضيفات Apache الافتراضية على Debian 9 • كيفية تثبيت MariaDB على Debian 9 • تأمين Apache مع Let's Encrypt على Debian 9تأمين اباتشي مع دعونا تشفير على centos 7
في هذا البرنامج التعليمي ، سنغطي الخطوات اللازمة لتثبيت شهادة Let's Encrypt SSL المجانية على خادم CentOS 7 يشغل Apache كخادم ويب.
تأمين اباتشي مع دعونا تشفير على centos 8
يشرح هذا البرنامج التعليمي كيفية تثبيت شهادة Let's Encrypt SSL المجانية على CentOS 8 التي تستخدم Apache كخادم ويب. سنستخدم أداة certbot للحصول على الشهادات وتجديدها.
تأمين اباتشي مع دعونا تشفير على أوبونتو 18.04
في هذا البرنامج التعليمي ، سنقدم إرشادات خطوة بخطوة حول كيفية تأمين Apache باستخدام Let's Encrypt باستخدام أداة certbot على Ubuntu 18.04.







