Страница 1 из 2

Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 09:34
al5dy
Здравствуйте. Знаю, проблема заезжена до дыр, но факт остается фактом - нет конкретного и актуального мануала по шагам в документации или где-то еще, как настроить и поднять этот несчастный ssl в open server.
Полностью все делал по 100500 раз в следующих ссылках:
viewtopic.php?f=1&t=3226
viewtopic.php?f=7&t=3050

Курил этот форум и другие, habr и stackoverflow - все тщетно, максимум чего удавалось достичь гладкой работы в Firefox, IE 11, пока как Chrome и Opera постоянно выбивают "Не защищено"

Очень сильно прошу помощи как всю эту кухню настроить по шагам или дать ссыль (если такая вообще существует).
Заранее спасибо.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 11:05
Pashik
Соглашусь с автором, что нужно добавить
подробное описание установки сертификатов в мануал.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 12:36
GeekHacker
Так в OpenServerЕ же ssl из коробки настроен.
Кроме этого, настройка https прекрасно описана в документациях по Nginx/Apache, кому что нужно.
Если юзаете самоподписанные сертификаты, естественно, что браузеры выводят сообщения безопасности. Добавляете сертификат в список доверенных и никаких проблем. Если юзаете нормальные сертификаты, то проблем нет изначально.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 12:47
al5dy
GeekHacker писал(а): Добавляете сертификат в список доверенных и никаких проблем. Если юзаете нормальные сертификаты, то проблем нет изначально.
Можете тогда пожалуйста тут расписать, где получить нормальные сертификаты, и как их добавить в доверенные ? ... т.к все горазды писать "дескать генерируй в lets encrypt / comodo крекс-фекс-пекс и все готово", хотя на практике лично у меня с любым сертификатом идут траблы, где бы я его не генерировал + также умалчивается постоянно про generate.bat в OpenServer\modules\http\Apache-2.4\conf\ например, зачем он нужен/можно ли им одним обойтись? Ведь, вероятно не для красоты он там лежит и генерирует сертификаты.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 13:35
Ink0gnit0
al5dy,
1. Установите корневой сертификат "C:\openserver\userdata\config\cert_files\rootCA.crt" в "Доверенные корневые центры сертификации".
2. Создайте на рабочем столе файл, например, cert_gen.cmd.
3. Откройте в блокноте созданный файл и сохраните со следующим содержимым:
@echo OFF
rem УКАЖИТЕ ПРАВИЛЬНЫЕ РАСПОЛОЖЕНИЯ ФАЙЛОВ
set OPENSSL_CONF=C:\openserver\modules\http\Apache-2.4\conf\openssl.cnf
PATH=%PATH%;C:\openserver\modules\http\Apache-2.4\bin

rem Количество дней действия сертификата
set days=730
set key_bits=2048
rem Наименование домена, для которого создаётся сертификат
set dname=test
rem УКАЖИТЕ ПРАВИЛЬНЫЕ РАСПОЛОЖЕНИЯ ФАЙЛОВ
rem Расположение корневого сертификата и ключа
set root_cert=C:\openserver\userdata\config\cert_files\rootCA.crt
set root_key=C:\openserver\userdata\config\cert_files\rootCA.key

echo [trust_cert] > %dname%.cnf
echo subjectAltName=@alt_names >> %dname%.cnf
echo keyUsage=digitalSignature,keyEncipherment,dataEncipherment >> %dname%.cnf
echo extendedKeyUsage=serverAuth,clientAuth >> %dname%.cnf
echo [alt_names] >> %dname%.cnf
echo DNS.1 = %dname% >> %dname%.cnf

openssl genrsa -out %dname%.key %key_bits%

openssl req -sha256 -new -utf8 -key %dname%.key -out %dname%.csr -subj /emailAddress="info\@ospanel\.io"/C=RU/stateOrProvinceName="Russian Federation"/L=Moscow/O="Open Server Panel"/OU=Software/CN=%dname%

rem Для создания сертификата, подписанного доверенным сертификатом
openssl x509 -sha256 -req -days %days% -in %dname%.csr -extfile %dname%.cnf -extensions trust_cert -CA %root_cert% -CAkey %root_key% -out %dname%.crt

openssl x509 -in %dname%.crt -noout -purpose

rem Удаление временных файлов
del %dname%.csr
del %dname%.cnf

pause
4. Выполните созданный CMD-файл. Если все пути задали корректно, рядом с запущенным CMD-файлом появятся сгенерированные сертификат и ключ для указанного домена (параметр dname), как на изображении во вложении.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 14:21
Pashik
Ink0gnit0, раньше не было дело до SSL, решил поставить по вашему описанию. Сертификат установился, соединение надежное. Возникло два вопроса: как заставить браузер открывать сайт сразу по https и как установить несколько сертификатов (на несколько доменов)? Использую Apache PHP-7 + Nginx 1.10.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 15:33
Ink0gnit0
Pashik,
Генератор сертификатов для каждого домена

В последнем сообщении файлы для OSPanel версии 5.2.4. Для версии 5.2.6 придётся немного подправить конфигурационные файлы, возможно и пути в CMD-файлах.

Касательно автоматического переключения на HTTPS:
1. Скопируйте конфигурационный файл "C:\openserver\userdata\config\Apache-PHP-7+Nginx-1.10_vhostn.conf" в корень домена - например, в C:\openserver\domains\testdomain
2. В скопированном файле вместо:
#-----------------------------------------------#
# Конфигурация хоста для сервера Nginx
# Начало блока конфигурации хоста
#-----------------------------------------------#

server {
    listen         %ip%:%httpport%;
    listen         %ip%:%httpsport% ssl;
    server_name    %host% %aliases%;
    ...
}
вставьте:
#-----------------------------------------------#
# Конфигурация хоста для сервера Nginx
# Начало блока конфигурации хоста
#-----------------------------------------------#
server {
	listen         %ip%:%httpport%;
	server_name    %host% %aliases%;
	return 301 https://$server_name$request_uri;
}
server {
    listen         %ip%:%httpsport% ssl;
    server_name    %host% %aliases%;
    ...
 }
3. Сохраните файл, перезапустите OSPanel, проверьте результат.

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 18:30
Pashik
Ink0gnit0, спасибо, все работает как нужно :)

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 20:33
al5dy
Ink0gnit0, спасибо все заработало! Однако, теперь только firefox ругается на незащищенное соединение, возможно вы знаете в чем может быть причина?
Также хотелось бы уточнить нужно ли добавлять файлы после cert_gen.cmd в доверенные сертификаты?

Re: Проблемы с SSL в брузерах

Добавлено: 26 июн 2017, 20:46
Pashik
al5dy, ну разумеется Firefox будет ругаться. Там нужно аналогично установить корневой сертификат "ospanel". Нет, эти сертификаты выдаются для доменов. Корневой как раз и делает их доверенными.