Добавление 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 директиву:

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

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

Создание архива без сохранения абсолютного пути в UNIX

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

Если вы укажите полный путь архивируемой папки в UNIX, то файлы будут размещены в архиве вместе полным путем. Не всегда это удобно и правильно, зависит от выполняемой задачи. Как отсечь абсолютные пути, оставив только относительные? Для этого ...

Читать

Полезные команды для админа хостинга на UNIX

Август 22, 2013 г.

Те кто постоянно работает в командной строке UNIX, не находят ничего сложного в использовании разных утилит. Мне иногда приходится общаться с UNIX через ...

Читать

 

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

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



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