Установка SSL-сертификата на локальный сайт

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (12)

просмотр истории страницы
{tip}*Время выполнения инструкции*: до 15 минут начальная настройка, 2-3 минуты последующее обновление сертификата{tip}

h2. Введение Описание

При работе личного кабинета абонента по https, используются автоматически сгенерированные самоподписанные сертификаты. При этом абонент получает в браузере предупреждение об использовании сайтом недоверенного сертификата. Чтобы решить эту проблему, можно приобрести сертификат на используемое вами доменное имя локального сайта у авторизованного центра сертификации и установить его на сервер.
Сертификационные центры чаще всего используют трехуровневую схему подписей. Для подписывания сайта понадобится:
* Публичный сертификат для вашего сайта со встроенным в него публичным ключем;
* Секретный ключ от вашего сертификата;
* Сертификат промежуточного центра сертификации.

При этом, как правило, абонент получает в браузере предупреждение об использовании сайтом недоверенного сертификата.

Чтобы решить эту проблему, можно приобрести сертификат на используемое вами для локального сайта (обычно, доступного из внешней сети) доменное имя у авторизованного центра сертификации и установить его на сервер.

Сертификационные центры чаще всего используют трехуровневую схему подписей,

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

Сертификаты должны быть в формате PEM.

Получите нужные файлы у центра сертификации и по scp скопируйте их на сервер, например в директорию /tmp.

С дополнительной информацией по установке сертификатов можно ознакомиться по ссылке [https://knowledge.digicert.com/home.html]
Сертификаты должны быть в формате *PEM*.
Сертификат должен быть подписан с помощью алгоритма *sha256* с использованием *rsa* шифрования. Проверить сертификат можно командой:
{code:title=Команда}
openssl x509 -text -noout -in ca.crt | grep "Signature Algorithm" | tail -n 1
{code}
{code:title=Результат}
Signature Algorithm: sha256WithRSAEncryption
{code}

{warning:title=Warning}
Необходимо создавать или заказывать ssl сертификаты без пароля. Иначе при перезапуске web сервера придётся каждый раз вводить пароль. Это создаёт проблемы при обновлении и подобных операциях.
Необходимо заказывать ssl сертификаты без пароля. Иначе при каждом перезапуске web сервера придётся вводить пароль. Это создаёт проблемы при обновлении или сервисных работах.
Если вы заказали сертификат с паролем, снять его можно командой:
{code}
openssl rsa -in ca_passwd.key -out ca_no_passwd.key
{code}
{warning}

h2. Инструкция по установке сертификата

{warning}
После выполния инструкции теряется возможность настраивать личный кабинет из вэб интерфейса по адресу *http://<ip биллинга>:8081/settings/asr_cabinet/*. Все настроеки личного кабинета нужно будет производить в файле:
{code}
/app/asr_cabinet/cfg/etc/httpd/conf/httpd.conf
{code}
{warning}

# Настройте порты и включите SSL в конфигурационном файле /app/asr_cabinet/cfg/config
По-умолчанию порт 443 занят Codeigniter (старый ЛК), а ssl для Wordpress находится на порту 8443. Необходимо поменять порты местами, включить SSL для Wordpress, после чего перезапустить контейнер чтобы корректно сформировались правила *iptables*
{code}/app/asr_cabinet/service restart{code}
# Внесите изменения в конфигурационный файл Apache:
*/app/asr_cabinet/etc/httpd/conf/httpd.conf* {code}
/app/asr_cabinet/etc/httpd/conf/httpd.conf
{code}
#* В настройках *<VirtualHost \*:80>* змените *RewriteCond %\{REQUEST_URI\} ^/cabinet.* на *RewriteCond %\{HTTPS\} off* чтобы HTTPS был включен глобально на сайт, а не только личный кабинет.
Замените *RewriteEngine Off* на *RewriteEngine On*, чтобы включить движок редиректов.
cp -p /app/asr_cabinet/etc/httpd/conf/httpd.conf /app/asr_cabinet/cfg/etc/httpd/conf/httpd.conf
{code}
{warning}После этого изменения в настройках личного кабинета по адресу <ip биллинга>:8081/settings/asr_cabinet/ не будут менять настройки веб-сервера{warning}
# Скопируйте сертификаты в директорию сертификатов:
{code}