Домой / Linux / Установка SSL сертификата на Apache под CentOS 7

Установка SSL сертификата на Apache под CentOS 7

После установки NextCloud, потребовалось иметь доступ к нему с интернета. Для этого было нужно максимально обезопасить соединение. Одним из пунктов был установка ssl сертификата.

Установка зависимых модулей

Для установки сертификата нам необходим certbot и наличие EPEL репозитория, так как оно отключено в CentOS 7 по умолчанию. Также требуется mod_ssl, чтобы Apache мог распознавать шифрование.

Устанавливаем модули:

yum install epel-release mod_ssl

Приготовления завершены. Теперь готовы к установке certbot.

Установка клиента Let’s Encrypt

Установите certbot из EPEL хранилища выполнив команду:

yum install python-certbot-apache

Теперь сertbot установлен и готов к использованию.

Настройка SSL сертификата

Certbot — инструмент для управления SSL сертификатами, также он может генерировать новые сертификаты для необходимого домена.

Для примера создаем сертификат для admincorner.ru:

certbot --apache -d admincorner.ru

Если вы хотите сгенерировать несколько SSL сертификатов для нескольких доменов и субдоменов:

certbot --apache -d admincorner.ru -d www.admincorner.ru

ВАЖНО! Первый домен должен быть базовым доменом, в этом примере это admincorner.ru.

В процессе установки будет представлено пошаговое руководство по настройке сертификата. Вы сможете настроить использование HTTPS или оставить HTTP в качестве протокола по умолчанию, также вам будет необходимо предоставить адрес вашей электронной почты в целях безопасности.

Как только установка будет завершена, вы увидите следующее сообщение:
IMPORTANT NOTES:
— If you lose your account credentials, you can recover through
e-mails sent to [email protected]
— Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/admincorner.ru/fullchain.pem. Your cert
will expire on 2016-04-21. To obtain a new version of the
certificate in the future, simply run Let’s Encrypt again.
— Your account credentials have been saved in your Let’s Encrypt
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 Let’s
Encrypt so making regular backups of this folder is ideal.
— If you like Let’s Encrypt, please consider supporting our work by:

Donating to ISRG / Let’s Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

Настройка автообновления SSL сертификата

Сертификат Let’s Encrypt действителен в течении 90 дней, но желательно обновлять его каждые 60 дней для избежания возникновения проблем с безопасностью. Сделать это вам поможет сам certbot, с помощью команды renew. После выполнения команды он проверит время до истечения срока действия сертификата.

Обновляем сертификат:

certbot renew

Если установленный сертификат еще действителен, certbot проверит только дату истечения срока годности:

Processing /etc/letsencrypt/renewal/admincorner.ru.conf
The following certs are not due for renewal yet:
/etc/letsencrypt/live/admincorner.ru/fullchain.pem (skipped)
No renewals were attempted.

Для автоматизации данного процесса, вы можете настроить cronjob. Откройте crontab:

crontab -e

Эта задача может быть записана в расписание на каждую полночь понедельника.

0 0 * * 1 /usr/bin/certbot renew >> /var/log/sslrenew.log

Журнал выполнения задачи будет выведен в файл /var/log/sslrenew.log.

Заключение

Только что мы защитили ваш веб-сервер Apache подключив бесплатный SSL сертификат! С этого момента весь трафик между сервером и клиентом будет шифроваться. Вы можете быть уверены, что никто не сможет перехватить сообщения или украсть важную информацию.

Проверьте также

Доступ к Windows RDP по E-mail

Сразу оговоримся: с программированием не знаком и не считаю себя скриптером или кодером. То, что …

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *