Меню Рубрики

Установка ssl сертификата comodo apache

Установка SSL-сертификата на Apache

Настройка HTTPS на Apache и установка SSL необходима, чтобы обеспечить защиту данных пользователей на вашем веб-сайте. В инструкции ниже описана установка SSL-сертификата Comodo, GlobalSign и других, предоставляемых REG.RU, и установка SSL, заказанных в других компаниях.

Активный SSL-сертификат

Перед установкой SSL-сертификата от REG.RU перейдите к списку услуг и убедитесь, что услуга SSL-сертификата активна (значок зелёного цвета):

Процесс установки SSL

После выпуска SSL на ваш контактный e-mail придёт письмо с данными для его установки, это:

  • сам сертификат;
  • корневой сертификат;
  • промежуточный сертификат.

Приватный ключ обычно генерируется при заказе SSL и сохраняется на ваш локальный ПК.

Создайте на вашем сервере в каталоге /etc/ssl/ файлы domain_name.crt, private.key и chain.crt со следующим содержимым:

  • domain_name.crt — сам сертификат;
  • private.key — приватный ключ;
  • chain.crt — цепочка сертификатов, которая содержит сначала промежуточный сертификат и следом за ним корневой (с новой строки без пробелов и пустых строк).

Откройте файл конфигурации Apache. В зависимости от особенностей вашего сервера этот файл находится по одному из следующих адресов:

  • для CentOS: /etc/httpd/conf/httpd.conf;
  • для Debian/Ubuntu: /etc/apache2/apache2.conf;
  • если вы устанавливаете SSL-сертификат на OpenServer, используйте путь к его корневой папке.

В конце файла создайте идентичную копию блока «VirtualHost». Для созданного блока укажите порт 443 и добавьте внутри него строки:

Внимание! Для версий Apache, начиная с 2.4.8, последнюю строку добавлять не нужно.

Пример конфигурационного файла:

На этом настройка SSL-сертификата на Apache закончена. Далее необходимо настроить переадресацию для вашего сайта.

Настройка HTTPS на Apache

После установки SSL необходимо настроить редирект с протокола HTTP на HTTPS. Редирект для Apache настраивается через файл .htaccess.

Чтобы осуществить переадресацию добавьте в конце файла .htaccess следующие строки:

Подробнее про редирект через .htaccess вы можете узнать в статье: Редирект через .htaccess.

Проверка установленного SSL

Вы можете проверить корректность установки SSL-сертификата по инструкции: Как проверить правильность установки SSL-сертификата?

Если у вас возникли сложности с установкой SSL-сертификата, вы можете написать заявку в службу поддержки, и наши специалисты вам помогут.

источник

Установка SSL сертификата: Apache & mod_ssl OpenSSL

Установка SSL на Apache & mod_ssl OpenSSL

Шаг первый: Скопируйте Ваш сертификат в файл на Ваш apache сервер

Вы получите email от Comodo c сертификатом. Сертификат будет называться ‘Вашдомен.crt’ и содержать в zip архиве. Как видно в текстовом редакторе сертификат будет выглядеть примерно так:

——BEGIN CERTIFICATE——
MIAGCSqGSIb3DQEHAqCAMIACAQExADALBgkqhkiG9w0BBwGggDCCAmowggHXAhAF UbM77e50M63v1Z2A/5O5MA0GCSqGSIb3DQEOBAUAMF8xCzAJBgNVBAYTAlVTMSAw
(. )
E+cFEpf0WForA+eRP6XraWw8rTN8102zGrcJgg4P6XVS4l39+l5aCEGGbauLP5W6 K99c42ku3QrlX2+KeDi+xBG2cEIsdSiXeQS/16S36ITclu4AADEAAAAAAAAA
——END CERTIFICATE——

Скопируйте Ваш сертификат в ту же директорию (папку), в которой содержится Private Key (приватный ключ). В этом примере мы используем ‘/etc/ssl/crt/’. The private key (приватный ключ), используемый в примере, помечен как ‘private.key’ и public key будет ‘yourDOMAINNAME.crt’.

Примечание: Рекомендуем Вам создать директорию (папку), которая содержит файл private key (приватного ключа), видимую только корневым каталогом.

Шаг 2: Установите корневой каталог и промежуточные сертификаты

Вам нужно установить корневой каталог и Промежуточные CA сертификаты для того, чтобы браузеры и устройства доверяли Вашему сертификату. Корневой каталог и Промежуточные CA сертификаты содержаться в ‘ca-bundle’ файле, который был прикреплен к email в виде zip-архива (он должен называться ‘yourSERVERNAME.ca-bundle’). В соответствующем разделе Вашего сайта ‘Virtual Host’ Вам необходимо будет проделать следующее, чтобы правильно ссылаться на этот файл:

a. Для начала скопируйте файл ‘yourSERVERNAME.ca-bundle’ в ту же самую директорию (папку), в которой содержится сертификат и файлы ключей. Как напоминание, в этом примере мы назвали директорию (папку) ‘/etc/ssl/crt/’.

б. Далее, добавьте следующую строку в раздел SSL файла ‘httpd.conf’. Мы снова предполагаем, что директорией (папкой), в которую Вы скопировали файл промежуточного CA, является ‘/etc/ssl/crt/’. Если строка уже существует, то исправьте ее, чтобы она выглядела так:

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

SSLCertificateFile /etc/ssl/crt/yourDOMAINNAME.crt
SSLCertificateKeyFile /etc/ssl/crt/private.key
SSLCertificateChainFile /etc/ssl/crt/yourSERVERNAME.ca-bundle ***

г. Сохранить Ваш ‘config’ файл и перезагрузите Apache.

*** Для Apache 1.x: Используйте: SSLCACertificateFile /etc/ssl/crt/yourSERVERNAME.ca-bundle

Примечание: Файл конфигурации apache всегда должен ссылаться на файл конфигурации SSL, если конфигурация не включена в него. Просмотрите строки, начинающиеся с ‘include’, которые указывают на те файл, которые включены. Например, они могут называться ssl.conf, httpd-ssl.conf и т.д., в зависимости от дистрибутива.

Установка SSL на Plesk Server Administrator

Важно: Процесс установки включает 2 этапа, убедитесь, что Вы проделали оба этих этапа, руководствуясь нижеследующей инструкцией.

Шаг 1: Загрузите Ваш SSL сертификат

Читайте также:  Установка грм на антаре

В PSA выберите домен, для которого Вы будете устанавливать SSL сертификат.
Зайдите в раздел SSL домена путем нажатия на кнопку ‘certificate’.
При генерации CSR (запрос на подписание сертификата) есть 2 разных текстовых раздела, RSA Private Key (который был прислан Вам по email Plesk’ом) и Certificate Request. В процессе установки сертификата, текст RSA Private Key должен быть вставлен в блок, предшествующий сертификату сайта веб сервера. Например:

——BEGIN RSA PRIVATE KEY——
[[ENCODED BLOCK OF TEXT]]
——END RSA PRIVATE KEY——
——BEGIN CERTIFICATE——
[[ENCODED BLOCK OF TEXT]]
——END CERTIFICATE——

Вставьте Private Key с текстом Сертификата в Enter Certificate Text: текстовое поле и нажмите кнопку Send Text.


Если все было сделано успешно, то появится сообщение ‘Certificate Successfully Installed’. Если есть какие либо ошибки, то новый сертификат будет заменен старым, который Вы уже отправляли на сервер и у Вас будет запрошено ввести его снова. Теперь нажмите Up Level для возврата на Domain Administration page.

Шаг 2: Загрузка Rootchain Certificate

Для того чтобы убедиться, что Вашему сертификату доверяют все браузеры, Вам необходимо установить rootchain certificate для домена.

В PSA выберите домен, для которого Вы будете устанавливать SSL сертификат. Зайдите в раздел SSL домена путем нажатия на кнопку ‘certificate’.
Появится следующая иконка для Use rootchain certificate for this domain appears on this page.
Если иконка установлена на [ON] , значит rootchain certificate будет активирован для этого домена. А если — [X], значит отключен.
Убедитесь, что зиконка установлена на [X] перед тем, как продолжать далее (возможно Вам необходимо будет нажать кнопку ON/OFF, если появиться иконка [ON]):


Нажмите кнопку browse и разместите файл Intermediate CA (находится в zip архиве, который Вы получили по email и также доступен для загрузки в секции support вебсайта comodo), который Вы сохранили ранее из email от Comodo.
Затем нажмите кнопку Send File. Тем самым Вы загрузите Intermediate certificate на сервер.
Нажмите значок снова, чтобы установить на положение [ON] .
Теперь нажмите Up Level для возврата на Domain Administration page.

Использование Вашего SSL сертификата для безопасного входа в Plesk Administrator
Если Вы используете ваш сертификат в Plesk control panel (для безопасного входа), Вам необходимо зайти в Plesk Administrator и выбрать Server.
Выберите Certificate и следуйте тем же инструкциям, что и для использования SSL сертификата для домена.

источник

Установка ssl сертификата на сервер Apache

Следуя трендам рекомендаций Google, а именно рекомендация по переходу на https протокол, я решил себе также поставить https протокол на свой сайт. HTTPS получается за счет криптографического протокола SSL. SSL может быть как самописный, так и покупной. Сегодня мы рассмотрим покупной вариант. За SSL протокол я отдал чуть более 10$, заказывал здесь. Выбрал Comodo PositiveSSL.

На что следует обращать внимание при покупке SSL сертификатов

Сертификаты бывают нескольких типов: с проверкой домена (Например, мой блог), с проверкой организации (Например, на сайте сбербанк онлайн), WildCard с проверкой домена и его поддоменов.

Вариант SSL сертификата с проверкой домена и его поддоменов, а также с проверкой организации являются самыми дорогими.

Установка SSL сертификата на Freebsd

На самом деле нет принципиального значения, на какой операционной системе идет установка. Лицензиар пересылает сначала вам ключ формата:

Сохраняем его как www_domain.key, где domain – ваш домен.

Далее придут еще ряд файлов:

Для Comodo Essential SSL будут отправлены следующие файлы:

  • AddTrustExternalCARoot.crt
    ComodoUTNSGCCA.crt
    EssentialSSLCA_2.crt
    domainname.crt
    UTNAddTrustSGCCA.crt

Для Comodo PositiveSSL центром сертификации будут отправлены следующие файлы:

  • AddTrustExternalCARoot.crt
    COMODORSAAddTrustCA.crt
    COMODORSADomainValidationSecureServerCA.crt
    domainname.crt

где domainname.crt сертификат вашего домена.

Оставшиеся файлы нужны для составления цепочки сертификата. В первом случае необходимо объединить EssentialSSLCA_2.crt ComodoUTNSGCCA.crt UTNAddTrustSGCCA.crt AddTrustExternalCARoot.crt > yourDomain.ca-bundle

#cat EssentialSSLCA_2.crt ComodoUTNSGCCA.crt UTNAddTrustSGCCA.crt AddTrustExternalCARoot.crt > yourDomain.ca-bundle

И во втором случае объединить COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > yourDomain.ca-bundle
Где yourDomain.ca-bundle – сертификат-цепочка из других доменов.
Далее необходимо проверить проброшены ли у вашего сервера 443 порт.
В FreeBSD это можно сделать командой:
# sockstat |grep 443
Результат:
root httpd 8329 19 tcp4 192.168.225.20:443 *:*
в Linux:
# netstat -napt | grep 443
tcp 0 0 188.120.233.16:443 0.0.0.0:* LISTEN 731/apache2
Warning: если у вас локальный сервер также проверьте проброс 443 порта по роутеру. При установке SSL протокола на свой блог данный момент у меня вылетел из головы и стоил мне 2х бессонных ночей.
Теперь открываем файл-конфигурации Apache httpd.conf. Там нас интересует следующее
Снимаем комментирование со строк (Убираем решетку перед строкой):
LoadModule ssl_module libexec/apache24/mod_ssl.so
Include etc/apache24/extra/httpd-ssl.conf
Далее открываем httpd-ssl.conf
Прикладываю весь листинг конфигурации с необходимыми комментариями:
#Слушать порт 443
Listen 443
#Использовать все протоколы, кроме SSLv2 и SSLv3 (у них была проблема с криптозащитой, и их могут взломать)
SSLProtocol ALL -SSLv2 -SSLv3
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
#Виртуальный хост

Читайте также:  Установка биксенона polo sedan

#Корень сайта
DocumentRoot /usr/local/www/site
#Домен
ServerName site.ru
#e-mail администратора
ServerAdmin simpple@yandex.ru
#Куда записывать логи
ErrorLog /usr/local/www/site/error.log
CustomLog /usr/local/www/site/access.log common
#Использовать SSL
SSLEngine on
#Пути до ключа и сертификатов в указанные пути необходимо разместить ваш ключ и сертификаты, путь до ключа и сертификата может быть отличный. Главное, что бы ключ и сертификаты были в области видимости сервера Apache, рекомендуется размещать их вне доступных для Web директориях, например, в разделе Apache.
SSLCertificateKeyFile «/usr/local/etc/apache24/ssl/site/www_site_ru.key»
SSLCertificateFile «/usr/local/etc/apache24/ssl/site/www_site_ru.crt»
SSLCertificateChainFile «/usr/local/etc/apache24/ssl/site/www_site_ru.ca-bundle»

SSLOptions +StdEnvVars

SSLOptions +StdEnvVars

BrowserMatch «MSIE 3» \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog «/var/log/httpd-ssl_request.log» \
«%t %h %x %x \»%r\» %b»

При изменении всех параметров не забудьте перезагрузить apache
#service httpd restart

TLS и другие протоколы шифрования

Многие из вас, возможно, уже знают о различных протоколах шифрования, чуть выше данной статьи мы уже отказались от двух таких: SSLv2 и SSLv3. Существуют также современные протоколы шифрования такие, как TLS. TLS1.0 иногда еще называют SSL3.1, но не суть важно. При реализации https на своем сайте вы можете посмотреть, каким протоколом шифрования у вас шифруются все данные. Если вы заметите, что протокол шифрования у вас TLS1.0, то браузер добавит приписку, что данный протокол шифрования устарел и рекомендуется его обновить.

Как же обновить TLS? На самом деле все проще некуда. За возможные протоколы шифрования отвечают криптографические библиотеки операционной системе: в Unix системах это openssl.

Если у вас Freebsd вы всегда можете посмотреть, какую криптографическую библиотеку использует ваша ОС. Делается это командой:

У меня версия openssl 1.0.1p от июля 2015 года, данная криптографическая библиотека поддерживает протокол шифрования вплоть до TLS1.2, что является показателем защищенности данных. Задача в обновлении openssl немного не корректна, т.к. необходимо обновлять целую операционную систему. Скажу лишь следующее, FreeBSD9.2 со своей криптографической библиотекой максимум поддерживала TLS1.0, то же самое и с FreeBSD10.0. Лишь в версии FreeBSDD10.2 я наконец увидел, что используется TLS1.2. Сделать жесткую привязку по использованию того или иного протокола вы можете в конфиге Apache в директории SSLProtocol.

Через неделю у меня встала задача проверить самопальные SSL сертификаты на корректную работу на сервере. В результате манипуляций выяснилось, что в рамках Apache на одном статическом IP можно держать не более 1 домена, при условии, что у вас не WildCard SSL сертификат. Для эксплуатации множества доменов по SSL протоколу в качестве фронтэнда необходимо использовать сервер Nginx, настройку которого я планирую сделать в октябре-ноябре, но это будет уже совсем другая история.

В этой статье я также не разбираю, как использовать криптографические библиотеки для создания SSL сертификатов. Если кому будет интересна и данная тема – пишите в комментариях, обязательно что-нибудь придумаем.

источник

Установка InstantSSL на Apache & mod_ssl OpenSSL

Шаг первый: Скопируйте Ваш сертификат в файл на Ваш apache сервер

Вы получите email от Comodo c сертификатом. Сертификат будет называться ‘Вашдомен.crt’ и содержать в zip архиве. Как видно в текстовом редакторе сертификат будет выглядеть примерно так:

——BEGIN CERTIFICATE——
MIAGCSqGSIb3DQEHAqCAMIACAQExADALBgkqhkiG9w0BBwGggDCCAmowggHXAhAF UbM77e50M63v1Z2A/5O5MA0GCSqGSIb3DQEOBAUAMF8xCzAJBgNVBAYTAlVTMSAw
(. )
E+cFEpf0WForA+eRP6XraWw8rTN8102zGrcJgg4P6XVS4l39+l5aCEGGbauLP5W6 K99c42ku3QrlX2+KeDi+xBG2cEIsdSiXeQS/16S36ITclu4AADEAAAAAAAAA
——END CERTIFICATE——

Скопируйте Ваш сертификат в ту же директорию (папку), в которой содержится Private Key (приватный ключ). В этом примере мы используем ‘/etc/ssl/crt/’. The private key (приватный ключ), используемый в примере, помечен как ‘private.key’ и public key будет ‘yourDOMAINNAME.crt’.

Примечание: Рекомендуем Вам создать директорию (папку), которая содержит файл private key (приватного ключа), видимую только корневым каталогом.

Шаг 2: Установите корневой каталог и промежуточные сертификаты

Вам нужно установить корневой каталог и Промежуточные CA сертификаты для того, чтобы браузеры и устройства доверяли Вашему сертификату. Корневой каталог и Промежуточные CA сертификаты содержаться в ‘ca-bundle’ файле, который был прикреплен к email в виде zip-архива (он должен называться ‘yourSERVERNAME.ca-bundle’). В соответствующем разделе Вашего сайта ‘Virtual Host’ Вам необходимо будет проделать следующее, чтобы правильно ссылаться на этот файл:

Читайте также:  Установка аэропортов на x plane 10

a. Для начала скопируйте файл ‘yourSERVERNAME.ca-bundle’ в ту же самую директорию (папку), в которой содержится сертификат и файлы ключей. Как напоминание, в этом примере мы назвали директорию (папку) ‘/etc/ssl/crt/’.

б. Далее, добавьте следующую строку в раздел SSL файла ‘httpd.conf’. Мы снова предполагаем, что директорией (папкой), в которую Вы скопировали файл промежуточного CA, является ‘/etc/ssl/crt/’. Если строка уже существует, то исправьте ее, чтобы она выглядела так:

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

SSLCertificateFile /etc/ssl/crt/yourDOMAINNAME.crt
SSLCertificateKeyFile /etc/ssl/crt/private.key
SSLCertificateChainFile /etc/ssl/crt/yourSERVERNAME.ca-bundle ***

г. Сохранить Ваш ‘config’ файл и перезагрузите Apache.

источник

How to Install Certificates on Apache Open SSL

SSL Certificate Installation in Apache. Copy the Certificate files to your server.

Apache Server SSL Certificate Installation

  1. Download your Intermediate (XYZ.crt) and Primary Certificate (your_domain_name.crt) files from your Customer Area, then copy them to the directory on your server where you will keep your certificate and key files. Make them readable by root only.
  2. Find the Apache config file to edit.

The location and name of the config file can vary from server to server — especially if you use a special interface to manage your server configuration.

Apache’s main configuration file is typically named httpd.conf or apache2.conf. Possible locations for this file include /etc/httpd/ or /etc/apache2/. For a comprehensive listing of default installation layouts for Apache HTTPD on various operating systems and distributions, see Httpd Wiki — DistrosDefaultLayout.

Often, the SSL Certificate configuration is located in a block in a different configuration file. The configuration files may be under a directory like /etc/httpd/vhosts.d/, /etc/httpd/sites/, or in a file called httpd-ssl.conf.

One way to locate the SSL Configuration on Linux distributions is to search using grep, as shown in the example below.

Type the following command:

grep -i -r «SSLCertificateFile» /etc/httpd/

Where «/etc/httpd/» is the base directory for your Apache installation.

Identify the SSL block to configure.

If you need your site to be accessible through both secure (https) and non-secure (http) connections, you will need a virtual host for each type of connection. Make a copy of the existing non-secure virtual host and configure it for SSL as described in step 4.

If you only need your site to be accessed securely, configure the existing virtual host for SSL as described in step 4.

Configure the block for the SSL-enabled site.

Below is a very simple example of a virtual host configured for SSL. The parts listed in bold are the parts that must be added for SSL configuration:

DocumentRoot /var/www/html2
ServerName www.yourdomain.com
. on
SSLCertificateFile /path/to/your_domain_name.crt
SSLCertificateKeyFile /path/to/your_private.key
SSLCertificateChainFile /path/to/XYZ.crt

Adjust the file names to match your certificate files:

  • SSLCertificateFile should be your certificate file (eg. your_domain_name.crt).
  • SSLCertificateKeyFile should be the key file generated when you created the CSR.
  • SSLCertificateChainFile should be the intermediate certificate file (XYZ.crt)If the SSLCertificateChainFile directive does not work, try using the SSLCACertificateFile directive instead.
  • Test your Apache config before restarting.

    It is always best to check your Apache config files for any errors before restarting, because Apache will not start again if your config files have syntax errors. Run the following command: (it is apache2ctl on some systems)

    apachectl configtest
    Restart Apache.

    You can use apachectl commands to stop and start Apache with SSL support:

    apachectl stop
    apachectl start

    Note: If Apache does not start with SSL support, try using «apachectl startssl» instead of «apachectl start». If SSL support only loads with «apachectl startssl» we recommend you adjust the apache startup configuration to include SSL support in the regular «apachectl start» command. Otherwise your server may require that you manually restart Apache using «apachectl startssl» in the event of a server reboot. This usually involves removing the and tags that enclose your SSL configuration.

    источник

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