Просмотр Исходного

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

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

h2. Зашифрованные private.key

{color:#ff0000}Важно\!{color} Перед импортом сертификата необходимо использовать *незашифрованный закрытый ключ* private.key. Если ваш private.key зашифрован, сбросить его нужно командой:

{code}
cp private.key private.key.orig
openssl rsa -in private.key.orig -out private.key
{code}

h2. Импорт сертификатов

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

Получите нужные файлы у центра сертификации и по scp или WinSCP скопируйте их на сервер.

h3. Поддерживаемые сертификаты

1. Ru Center

{color:#000000}2. RapidSSL{color}


h3. Соответствие имён сертификатов от RU CENTER

Имена файлов могут отличаться. Например при использовании сертификатов от Thawte (в качестве посредника может быть RU CENTER), вы получите набор:
* root_cert_sslwebserver.crt \- соответствует domain.ca
* domain_name_date.crt \- соответсует domain.crt в команде ниже
* private.key \- обычно зашифрован и запаролен
* domain.name.csr - не нужен

На сервере выполните команды:


{code}
sslimport APACHE_CERT_FORCE private.key domain.crt
sslimport APACHE_CERT_CA_FORCE domain.ca
{code}
, которые поместят сертификаты в конфигурационный файл. Здесь private.key - секретный ключ от вашего сертификата, domain.cert - сертификат вашего сайта, domain.ca - сертификат промежуточного центра сертификации. После перезапуска локального веб сервера

{code}
/etc/init.d/apache_L restart
{code}
сертификаты начнут использоваться.

*Примечания:*

Файлы сертификатов должны быть в текстовом формате (можете их прямо открыть в mcedit), т.е в формате pem.

Усли у вас формат файлов cer, то их можно перекодировать командой:
{code}
openssl x509 \-inform der \-in ca.cer \-out ca.pem
{code}
*Отладка:*


Используя браузер firefox можно увидеть ошибки сертификата:

\- неверный сайт - вероятно, вы обращаетесь на сайт по ip, а сертификат выдан для домена. В комментарии вы увидите всю нужную информацию

\- недоверенный сертификат - вероятно, вы не выгрузили серверный сертификат, либо выгрузили вместо него другой сертификат

\- просроченный сертификат - вышел срок действия сертификата, нужно покупать новый


h2. Удаление сертификата

Для удаления сертификата нужно последовательно выполнить команды:
{code}
mount -o rw,remount /mnt/bk_disc/
chattr -i /mnt/bk_disc/etc/ics/ics.conf
sed -i '/APACHE_CERT_FORCE/d; /APACHE_CERT_CA_FORCE/d' /mnt/bk_disc/etc/ics/ics.conf
/etc/init.d/apache_L restart
{code}

h2. Заказ сертификата RUcenter

Если вы хотите заказ свой сертификат для своего домена, то для начала вам нужно сгенерировать запрос на получение сертификата (CSR), подробнее вы можете посмотреть на сайте руцентра [http://www.nic.ru/dns/service/ssl/csr.html|http://www.nic.ru/dns/service/ssl/csr.html]


По указанной ссылке доступна инструкция "Генерация CSR для Apache", для генерации запроса нужно выполнить шаги из инструкции.