Добавление SSL сертификатов для разных сайтов на одном ip

Давайте рассмотрим порядок действий и настройку SSL сертификата в apache2. В сети довольно много гайдов. Все они примерно следуют одному и тому же алгоритму.

Нам будут нужны три вещи:

  1. Файлы сертификата, ключа, и цепочки сертификатов.
  2. Создать дополнительные настройки виртуального хоста, гда подключаются файлы сертификатов.
  3. Применить новые настройки и проверить их.

Файлы SSL сертификата

Они у вас должны быть. Как их генерировать или где-то получить я рассказывать не буду. Пусть это будет SSL-серт, выпущенный для домена testdomain.com.

Создайте папку (если её нет) в каталоге с настройками apache — /etc/apache2/ssl. Вообще, место для размещения ключей принципиального значения не имеет.

Full.crt — это файл с цепочкой сертификатов, там повторяется SSL сертификат, после него идет корневой, а заканчивается список — промежуточным сертификатом. Каждый из них идет в собственных рамках и выглядит вот так:

Настройка виртуального хоста

Классическая настройка с мультисайтингом выглядит как набор отдельных конфигураций виртуальных хостов в папке /etc/apache2/sites-available.

Найдите там нужный файл настроек для вашего testdomain.com сайта. Создайте его копию, например, с именем testdomain.com.ssl.

Вот что нужно будет добавить/поменять в настройках:

SSLCertificateFile, SSLCertificateKeyFile, SSLCertificateChainFile — как раз те директивы, которые показывают, где лежат подготовленные заранее файлы ключа и SSL-сертификатов.

Применить новые настройки и проверить их

Чтобы включить новый файл настроек, можно создать символик-линку на него в папке /etc/apache2/sites-enabled. Или воспользоваться командой:

Включите модуль apache ssl, если он до сих пор не включен. Это можно сделать вручную (опять символик-линк в папке модулей) или специальной командой:

Не плохо бы протестировать конфигурацию перед перезапуском apache:

Если вы увидите только надпись:

То все готово, и можно перезапустить сервер, к примеру вот так:

Несколько сайтов со своим сертификатом

Все что было выше — это обычные настройки, которые будут работать с одним сайтом точно. Если у вас разные сертификаты для разных сайтов, то возможно тестирование настроек выдаст следующее сообщение:

Речь идет о том, что сервер не отличает разные виртуальные хосты по имени для 443 порта по умолчанию. Для всех обращений по 443 порту будут использованы первые попавшиеся настройки virtualhost *:443.

Чтобы решить эту проблему добавьте в общий файл конфигурации apache директиву:

Написать комментарий

Мало букафф? Читайте есчо !

Проблемы при установке therubyracer

Сентябрь 9, 2018 г.

Если после команды [crayon-5c1901236941d379222476/] Вы видите что то вроде: [crayon-5c19012369434396951500/] Возможно вам поможет следующий алгоритм установки. therubyracer потребовался мне для работы lessc, потому я стал искать решение, как ...

Читать

Копирование только нужных типов файлов в UNIX с сохранением путей

Февраль 23, 2018 г.

Решаем задачу о копировании файлов из каталога SRC в каталог DST, но только определенных заданных типов, сохраняя структуру каталогов. Это может понадобиться для сбора ассетов проекта, создания архивов и т.п. К примеру, вы хотите скопировать ...

Читать

 

Комментарии к «Добавление SSL сертификатов для разных сайтов на одном ip»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: