Настройка сертификатов Let’s Encrypt в Apache

В статье про бесплатные сертификаты для доменов я упомянул, что получить его и настроить сервер с появлением центра сертификации Let’s Encrypt стало очень просто. Покажу все шаги для настройки Apache.

Для начала, нужно загрузить установщик Let’s Encrypt. Если у вас чистая виртуальная машина, то кроме Git ничего не понадобится. Все остальные зависимости будут установлены позже.

apt-get install git

Установка Git

Клонируем репозиторий из Github.

git clone https://github.com/letsencrypt/letsencrypt

Клонирование репозитория Let’s Encrypt из Github

Переходим в папку с инсталятором.

cd letsencrypt

Переходим в папку с Let’s Encrypt

Инсталятор запускается командой:

./letsencrypt-auto

У него много параметров, посмотреть которые можно в справке.

./letsencrypt-auto --help all

Нас интересует получение сертификатов и установка их в Apache.

./letsencrypt-auto --apache

Запускаем установщик, который получит сертификаты и сконфигурирует сервер Apache

Установщик проверяет конфигурацию сервера. Если вы явно не указали доменные имена, то он предложит их ввести вручную.

Если в конфигурации Apache не указаны домены, то установщик запросит их у вас

Если домены были явно указаны, то инсталлятор предложит выбрать для каких из них он должен получить сертификат.

Установщик нашёл сконфигурированные домены

Он так же попросит указать email для обратной связи. Этот адрес электронной почты не будет добавлен в сертификат.

Требуется указать email для обратной связи

Перед полученим сертификатов требуется принять условия предоставления услуг.

Перед полученим сертификатов требуется принять условия предоставления услуг

Установщик может добавить правила для перенаправления пользователей с обычной версии сайта на версию с безопасным подключением.

Установщик может добавить правила для перенаправления пользователей с обычной версии сайта на версию с безопасным подключением

Настройка завершена. Инсталлятор предлагает проверить конфигурацию сервера с помощью онлайн сервиса Qualys SSL Lab.

Настройка завершена

Сайт уже можно попробовать открыть в браузере.

Проверяем полученный сертификат в браузере

Инсталлятор скопировал существующую конфигурацию сайта, добавил в оригинальный файл редирект на HTTPS-версию, а в копии указал пути до приватного ключа, сертификата домена и промежуточных сертификатов. Так же он подключил файл с дополнительными настройками для mod_ssl.

Изменения в конфигурационных файлах Apache

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