• Дигитални аксесоари
  • сървър
  • Дигитален живот
  • Политика за поверителност
  • Свържете се с нас
  1. Home
  2. Article
  3. Как да настроите Let’s Encrypt за множество виртуални хостове Apache ...

Как да настроите Let’s Encrypt за множество виртуални хостове Apache ...

Rsdaa 19/12/2021 1804

Въведение

SSL сертификатите се използват в рамките на уеб сървърите за криптиране на трафика между сървъра и клиента, осигурявайки допълнителна сигурност за потребителите, които имат достъп до вашето приложение. Let’s Encrypt предоставя лесен начин за безплатно получаване и инсталиране на надеждни сертификати.

Този урок ще ви покаже как да настроите TLS/SSL сертификати от Let’s Encrypt за защита на множество виртуални хостове на Apache в рамките на Ubuntu 14.04 сървър.

Също така ще разгледаме как да автоматизираме процеса на подновяване на сертификата с помощта на cron задание.

Предпоставки

За да завършите това ръководство, ще ви трябва:

Важно е всеки виртуален хост да е настроен в свой собствен отделен конфигурационен файл и да може да бъде достъпен външно чрез браузър. За подробно ръководство как правилно да настроите виртуални хостове на Apache в Ubuntu, следвайте тази връзка.

За целите на това ръководство ще инсталираме сертификати Let’s Encrypt за домейните example.com и test.com. Те ще бъдат посочени в ръководството, но трябва да ги замените със собствени домейни, докато следвате.

Когато сте готови да продължите, влезте в сървъра си, като използвате вашия sudo акаунт.

Стъпка 1 — Изтеглете Let’s Encrypt Client

Първата стъпка към използването на Let’s Encrypt за получаване на SSL сертификат е да инсталирате софтуера certbot на вашия сървър. Разработчиците на Certbot поддържат свое собствено софтуерно хранилище на Ubuntu с актуални версии на софтуера. Тъй като Certbot е в такава активна разработка, струва си да използвате това хранилище, за да инсталирате по-нов Certbot от предоставения от Ubuntu.

Първо добавете хранилището:

sudo add-apt-repository ppa:certbot/certbot

Ще трябва да натиснете ENTER, за да приемете. След това актуализирайте списъка с пакети, за да вземете информацията за пакета на новото хранилище:

И накрая, инсталирайте Certbot от новото хранилище с apt-get:

sudo apt-get install python-certbot-apache

Клиентът на certbot Let’s Encrypt вече е готов за използване.

Стъпка 2 — Настройте сертификатите

Генерирането на SSL сертификат за Apache с помощта на клиента certbot Let’s Encrypt е доста лесно. Клиентът автоматично ще получи и инсталира нов SSL сертификат, който е валиден за домейните, предоставени като параметри.

Въпреки че е възможно да обедините множество сертификати на Let’s Encrypt заедно, дори когато имената на домейни са различни, се препоръчва да създадете отделни сертификати за уникални имена на домейни. Като общо правило, само поддомейни на конкретен домейн трябва да бъдат групирани заедно.

Генериране на първия SSL сертификат

Ще започнем с настройка на SSL сертификата за първия виртуален хост, example.com.

Ще изпълним интерактивната инсталация и ще получим пакетен сертификат, който е валиден за домейн и поддомейн, а именно example.com като основен домейн и www.example.com като поддомейн. Можете да включите всички допълнителни поддомейни, които в момента са конфигурирани във вашата настройка на Apache като виртуални хостове или псевдоними.

Изпълнете командата certbot с:

sudo certbot --apache -d example.com -d www.example.com

Забележете, че първото име на домейн в списъка с параметри ще бъде основният домейн, използван от Let's Encrypt за създаване на сертификата, и поради тази причина ние препоръчваме да подадете голото име на домейн от първо ниво като първо в списъка, последвано от всички допълнителни поддомейни или псевдоними.

За този пример основният домейн ще бъде example.com.

След като зависимостите бъдат инсталирани, ще ви бъде представено ръководство стъпка по стъпка за персонализиране на вашите опции за сертификат. Ще бъдете помолени да предоставите имейл адрес за възстановяване на изгубени ключове и известия и ще можете да избирате между активиране на http и https достъп или принудително пренасочване на всички заявки към https.

Когато инсталацията приключи, трябва да можете да намерите генерираните файлове със сертификати в /etc/letsencrypt/live. Можете да проверите състоянието на вашия SSL сертификат със следната връзка (не забравяйте да замените example.com с вашия основен домейн):

https://www.ssllabs.com/ssltest/analyze.html?d=example.com&latest

Вече трябва да имате достъп до уебсайта си с помощта на https префикс.

Генериране на втория SSL сертификат

Генерирането на сертификати за вашите допълнителни виртуални хостове трябва да следва същия процес, описан в предишната стъпка.

Повторете командата за инсталиране на сертификат, сега с втория виртуален хост, който искате да защитите с Let’s Encrypt:

sudo certbot --apache -d test.com -d www.test.com

За този пример основният домейн ще бъде test.com.

Отново можете да проверите състоянието на вашия SSL сертификат със следната връзка (не забравяйте да замените test.com с вашия основен домейн):

https://www.ssllabs.com/ssltest/analyze.html?d=test.com&latest

Ако искате да генерирате сертификати за допълнителни виртуални хостове, просто повторете процеса и не забравяйте да използвате чист домейн от първо ниво като ваш основен домейн.

Стъпка 3 — Настройте автоматично подновяване

Сертификатите на Let’s Encrypt са валидни само деветдесет дни. Това има за цел да насърчи потребителите да автоматизират процеса на подновяване на сертификата си. Ще трябва да настроим команда за редовно изпълнение, за да проверяваме за изтичащи сертификати и да ги подновяваме автоматично.

За да изпълняваме проверката за подновяване ежедневно, ще използваме cron, стандартна системна услуга за изпълнение на периодични задачи. Казваме на cron какво да прави, като отваряме и редактираме файл, наречен crontab.

Вашият текстов редактор ще отвори crontab по подразбиране, който е текстов файл с помощен текст в него. Поставете следния ред в края на файла, след което го запазете и затворете:

crontab

. . .15 3 * * * /usr/bin/certbot renew --quiet

15 3 * * * частта от този ред означава „изпълнете следната команда в 3:15 сутринта всеки ден“. Можете да изберете по всяко време.

Командата за подновяване за Certbot ще провери всички сертификати, инсталирани в системата, и ще актуализира всички, които са настроени да изтичат след по-малко от тридесет дни. --quiet казва на Certbot да не извежда информация, нито да чака въвеждане от потребителя.

cron вече ще изпълнява тази команда всеки ден. Тъй като инсталирахме нашите сертификати с помощта на приставката --apache, Apache също ще бъде презареден, за да се гарантира, че новите сертификати се използват.

За повече информация как да създавате и планирате задания за cron, можете да проверите нашето Как да използвате Cron за автоматизиране на задачи във VPS ръководство.

Заключение

В това ръководство видяхме как да инсталираме безплатни SSL сертификати от Let’s Encrypt, за да защитим множество виртуални хостове на Apache. Препоръчваме ви да проверявате официалния блог на Let’s Encrypt за важни актуализации от време на време.


PREV: Как да присъедините ESXi към AD за подобрено управление и сигурност

NEXT: Централно управлявайте сигурността на акаунта, като се присъедините към ESXi хостове към ...

Popular Articles

Hot Articles

Navigation Lists

Back to Top