نحوه ایمن سازی Apache با Lets Encrypt در Ubuntu 18.04 VPS یا سرور اختصاصی

مقدمه

Let’s Encrypt یک مجوز صدور گواهینامه رایگان ، قابل اعتماد و خودکار (CA) است که توسط گروه تحقیقات غیر انتفاعی امنیت اینترنت (ISRG) طراحی شده است. CA از فرآیندهای کاملاً خودکار برای ارائه گواهینامه های رایگان SSL / TLS استفاده می کند و نیاز به ایجاد ، نصب ، تأیید و تجدید گواهی SSL را به صورت دستی کاهش می دهد…


بیایید رمزگذاری به برنامه های پیشرو اعتماد داشته باشد زیرا امنیت ، شفاف ، همکاری و خودکار است. CA گواهینامه های دیجیتالی مورد نیاز برای فعال کردن HTTPS برای وب سایت ها و ایجاد یک وب احترام به حریم خصوصی و ایمن را فراهم می کند.

این آموزش به شما کمک می کند تا سرویس Apache را با استفاده از Encrypt Encrypt از طریق ابزار معتبر Certbot در Ubuntu 18.04 VPS یا میزبان سرور اختصاصی خود رمزگذاری کنید.

آماده؟ بیا شروع کنیم!

قبل از اینکه تو شروع کنی

برای اجرای صحیح این روند ، موارد زیر را لازم دارید:

  • دامنه
  • Apache روی سرور شما نصب شد
  • میزبان های مجازی Apache کاملاً پیکربندی شده برای نام دامنه. می توانید از راهنمای ما استفاده کنید “چگونه می توان میزبان های مجازی Apache را در اوبونتو 18.04 تنظیم کرد” برای پیکربندی میزبان های مجازی.

اگر همه چیز موجود باشد ، اکنون می توانیم نصب را شروع کنیم.

مرحله 1 – نصب Certbot

اولین مورد هنگام امنیت Apache با Let Encrypt ، نصب ابزار certbot است. این ابزار فرایند دریافت و تمدید گواهینامه های SSL از رمزگذاری Let را خودکار و ساده می کند. علاوه بر این ، به شما کمک می کند تا سرور وب خود را برای استفاده از این گواهینامه ها پیکربندی کنید.

ابتدا شاخص بسته محلی را به روز کنید:

$ sudo به روزرسانی مناسب

سپس دستور زیر را برای نصب Certbot اجرا کنید:

$ sudo apt نصب certbot

خودشه! شما ابزار certbot را با موفقیت نصب کرده اید.

مرحله 2 – تولید گروه قوی DH

DH یا گروه Diffie Hellman یک گروه تبادل کلید معتبر است که یک محیط امن برای تسهیل مبادله کلیدهای رمزنگاری از طریق یک کانال ارتباطی که امنیت ندارد ایجاد می کند..

دستور زیر را اجرا کنید تا مجموعه ای از شخصیت های DH 2048 بیتی ایجاد کنید:

$ sudo opensl dhparam -out /etc/ssl/certs/dhparam.pem 2048

توجه داشته باشید: در صورت تمایل می توانید اندازه 2048 را با 4096 جایگزین کنید. با این کار باید صبور باشید زیرا تولید پارامترهای DH بسته به آنتروپی سیستم شما می تواند سی دقیقه یا بیشتر از زمان را ببرد..

مرحله 3 – دریافت گواهینامه SSL

پس از تولید گروه Dh ، اکنون می توانید گواهی SSL مورد نیاز دامنه منحصر به فرد خود را بدست آورید. در این آموزش ، ما استفاده خواهیم کرد مثال.com به عنوان نام دامنه ما؛ به یاد داشته باشید که این مقدار را با نام دامنه واقعی خود جایگزین کنید.

در این مرحله ، ما از افزونه Webroot استفاده خواهیم کرد تا پرونده ای برای آن ایجاد شود مثال.com در دایرکتوری $ {webroot-path /. شناخته شده / Acme-Challenge. سرور اعتبار سنجی برای رمزگذاری Let اجازه می دهد تا درخواست HTTP را تأیید کند که DNS دامنه به سروری که ابزار certbot را حل می کند ، تأیید شود.

ما به سادگی نقشه سرگرمی های HTTP را برای آنها نقشه برداری خواهیم کرد .شناخته شده / Acme-Challenge به / var / lib / letsencrypt. اکنون ، دستورات زیر را اجرا کنید تا دایرکتوری مورد نیاز خود را ایجاد کرده و آن را فعال کنید تا برای سرور آپاچی شما قابل نوشت باشد.

$ sudo mkdir -p /var/lib/letsencrypt/.well-known
$ sudo chgrp www-data / var / lib / letsencrypt
$ sudo chmod g + s / var / lib / letsencrypt

در مرحله بعدی ، برای جلوگیری از تکثیر کد ، دو قطعه پیکربندی منحصر به فرد ایجاد کنید. ابتدا ، دستور زیر را اجرا کنید تا اولین فایل پیکربندی را باز کنید:

$ sudo nano /etc/apache2/conf-available/letsencrypt.conf

محتوای زیر را در این پرونده اضافه کنید:

نام مستعار /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"

AllowOverride None
گزینه ها فهرست های چند نمایه SymLinksIfOwnerMatch شاملNoExec
روش مورد نظر را بدست آورید

این پرونده را ذخیره و از آن خارج شوید.

بعد ، دستور زیر را باز کنید تا پرونده پیکربندی دوم باز شود:

$ sudo /etc/apache2/conf-available/ssl-params.conf

محتوای زیر را در این پرونده کپی و جایگذاری کنید:

SSLCipherSuite EECDH + AESGCM: EDH + AESGCM: AES256 + EECDH: AES256 + EDH
SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder روشن
هدر همیشه تنظیمStrict-Transport-Security را تنظیم می کند"حداکثر سن = 63072000؛ شاملSubDomains؛ پیش بارگذاری"
هدر همیشه گزینه X-Frame-Options DENY را شروع می کند
نام هدر همیشه X-Content-Type- گزینه های nosniff نیست
# به Apache نیاز دارد >= 2.4
SSLCompression خاموش است
SSLUseStapling روشن است
SSLStaplingCache "shmcb: logs / stapling-cache (150000)"
# به Apache نیاز دارد >= 2.4.11
SSLSessionTickets خاموش است

SSLOpenSSLConfCmd DHParameters "/etc/ssl/certs/dhparam.pem"

فایل را ذخیره و از آن خارج شوید.

توجه داشته باشید: قطعه پیکربندی دوم از تراشه های مجاز توسط HSTS (HTTP Strict Transport Security) و Cipherli.st. snippet هدرهای HTTP محور امنیتی را تقویت می کند و OCSP Stapling را فعال می کند.

اکنون ، دستورات زیر را فعال کنید ماژول Apache SSL و mod_headers:

$ sudo a2enmod ssl
$ sudo a2enmod هدر

بعد ، دستورالعمل های زیر را اجرا کنید تا بتوانید حسن مجازی SSLتی و ssl-params.conf فایل:

$ sudo a2enconf letsencrypt
$ sudo a2enconf ssl-params

برای اجرای تغییرات ، پیکربندی Apache خود را مجدداً راه اندازی کنید:

$ sudo systemctl بارگذاری مجدد apache2

مرحله تنظیم شده است ، و اکنون می توانید با استفاده از یک افزونه Webroot ، گواهی SSL خود را پیاده سازی کنید:

$ sudo certbot به صورت مستقل –agree-tos –email [email protected] –webroot -w / var / lib / letsencrypt / -d shembull.com -d www.example.com

پس از دریافت گواهینامه ، پیام زیر را دریافت خواهید کرد:

یادداشت های مهم:
– تبریک می گویم! گواهی و زنجیره شما در موارد زیر ذخیره شده است:
/etc/letsencrypt/live/example.com/fullchain.pem
پرونده کلیدی شما در:
/etc/letsencrypt/live/example.com/privkey.pem
گواهینامه شما در تاریخ 2018-10-28 منقضی می شود. برای به دست آوردن یک جدید یا tweaked
نسخه این گواهینامه را در آینده به راحتی اجرا کنید
از نو. برای تجدید * همه * گواهینامه های خود را به صورت غیر تعاملی ، اجرا کنید
"تجدید Certbot"
– اگر Certbot را دوست دارید ، لطفاً از کارهای ما حمایت کنید:

اهدا به ISRG / بیایید رمزگذاری کنیم: https://letsencrypt.org/donate
اهداء به EFF: https://eff.org/donate-le

مرحله 4 – پیکربندی پرونده میزبان مجازی را اصلاح کنید

دستور زیر را برای باز کردن پرونده پیکربندی دامنه منحصر به فرد خود اجرا کنید:

$ sudo nano /etc/apache2/sites-available/example.com.conf

محتوای زیر را به این پرونده اضافه کنید؛

نام سرور example.com
ServerAlias ​​www.example.com

تغییر مسیر دائمی / https://example.com/

نام سرور example.com
ServerAlias ​​www.example.com

تغییر مسیر دائمی / 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 با هم ترکیب شدند

SSLEngineOn
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

# پیکربندی دیگر آپاچی

بعد ، سرویس Apache خود را بارگیری مجدد کنید:

$ sudo systemctl بارگذاری مجدد apache2

وب سایت های خود را باز کنید و بررسی کنید که آیا نماد قفل سبز را مشاهده خواهید کرد یا خیر

مرحله 5 – تنظیم تجدید خودکار

گواهینامه SSL تازه نصب شده فقط 90 روز اعتبار دارد. شما می توانید بسته Certbot را تنظیم کنید تا گواهی SSL خود را به طور خودکار قبل از تاریخ انقضا آن را تمدید کنید. این بسته باعث ایجاد کاراکتر می شود که هر روز دو بار اجرا می شود و یک ماه قبل از انقضا مجوز را تمدید می کند.

هر بار که گواهینامه SSL به صورت خودکار تمدید شود ، سرویس Apache باید بارگذاری مجدد شود. برای فعال کردن این امر ، اصلاح کنید /etc/cron.d/certbot پرونده با –قلاب تمدید "بارگذاری مجدد systemctl apache2", قلاب.

این پرونده به شرح زیر خواهد بود:

0 * / 12 * * * تست ریشه -x / usr / bin / certbot -a! -d / run / systemd / system && perl -e ‘خواب int (رند (3600))’ && certbot -q تمدید –renew قلاب "بارگذاری مجدد systemctl apache2"

بعد ، برای تأیید تجدید خودکار ، دستور زیر را اجرا کنید:

 $ sudo certbot تمدید – آزمایشی

اگر خطایی رخ ندهید ، فرایند تمدید خودکار گواهینامه SSL به درستی تنظیم شده است.

نتیجه

خودشه! شما با موفقیت از ابزار certbot و Let’s Encrypt برای به دست آوردن گواهی SSL برای نام دامنه خاص خود استفاده کرده اید.

این 3 سرویس برتر میزبانی لینوکس را بررسی کنید

FastComet

قیمت شروع:
2.95 دلار


قابلیت اطمینان
9.7


قیمت گذاری
9.5


کاربر پسند
9.7


پشتیبانی
9.7


امکانات
9.6

بررسی ها را بخوانید

از FastComet بازدید کنید

میزبان

قیمت شروع:
$ 0.99


قابلیت اطمینان
9.3


قیمت گذاری
9.3


کاربر پسند
9.4


پشتیبانی
9.4


امکانات
9.2

بررسی ها را بخوانید

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

ChemiCloud

قیمت شروع:
2.76 دلار


قابلیت اطمینان
10


قیمت گذاری
9.9


کاربر پسند
9.9


پشتیبانی
10


امکانات
9.9

بررسی ها را بخوانید

از ChemiCloud بازدید کنید

مقالات مرتبط با نحوه

  • نحوه راه اندازی وردپرس Multisite در اوبونتو 18.04 با Apache Web Server
    حد واسط
  • نحوه پیکربندی تنظیمات KeepAlive برای Apache که از طریق Ubuntu 18.04 VPS اجرا می شود
    حد واسط
  • چگونه می توان Apache Mod_Rewrite را در Ubuntu 18.04 VPS یا سرور اختصاصی فعال کرد
    کارشناس
  • نحوه استفاده از پرونده .htaccess در اوبونتو 18.04
    تازه کار
  • نحوه نصب Apache ، MySQL & پی اچ پی در Ubuntu 18.04 VPS یا سرور اختصاصی
    حد واسط
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me