Логотип   Простое и понятное управление
  Уникальные возможности по настройке
  Open Server скачали уже 1 022 697 раз!

Форум

Добро пожаловать, Гость!

(не к спеху) У меня проблемы с установкой ssl сертификата =)

Обсуждение общих вопросов связанных с программой
hjet
Сообщения: 7
C нами: 4 года 6 мес

Непрочитанное сообщение hjet » 25 май 2012, 18:31

Я в ssl сертификатах не особо секу, особенно в тонкостях по настройке apache + ssl, самоподписной сертификат создавать и подключать умею (благо гугл богат мануалами), но вот когда решил попробовать прикрутить реальный валидный сертификат - все пошло вкривь и вкось =)

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

Что у меня есть:

ssl.crt - собственно сам сертификат на домен
ssl.key - rsa приватный ключ к сертификату
ca.pem - ключ свидетельства сертификата
sub.class1.server.ca.pem - еще какая то неведомая хНя

И что мне дал регистратор для подключения сертификата к апачу(версию не указал, но предположу что 2):
LoadModule ssl_module modules/mod_ssl.so 

Listen 443

<VirtualHost _default_:443>
   DocumentRoot /home/httpd/private
   ErrorLog /usr/local/apache/logs/error_log
   TransferLog /usr/local/apache/logs/access_log
   SSLEngine on
   SSLProtocol all -SSLv2
   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM

   SSLCertificateFile /usr/local/apache/conf/ssl.crt
   SSLCertificateKeyFile /usr/local/apache/conf/ssl.key
   SSLCertificateChainFile /usr/local/apache/conf/sub.class1.server.ca.pem
   SSLCACertificateFile /usr/local/apache/conf/ca.pem
   SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
   CustomLog /usr/local/apache/logs/ssl_request_log \
      "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>


Вообщем взял я отсюда самое вкусное и вставил в секцию с %httpsport%, что логично :lol:
<VirtualHost %ip%:%httpsport%>
   SSLEngine on

# вставка {
   SSLProtocol all -SSLv2
   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM

   SSLCertificateFile c:/op/server/http/Apache-2.4.2/conf/ssl.crt
   SSLCertificateKeyFile c:/op/server/http/Apache-2.4.2/conf/ssl.key
   SSLCertificateChainFile c:/op/server/http/Apache-2.4.2/conf/sub.class1.server.ca.pem
   SSLCACertificateFile c:/op/server/http/Apache-2.4.2/conf/ca.pem
# } вставка
  DocumentRoot "%hostdir%"
  ServerName "%host%"
  ServerAlias "%host%" %aliases%
  <IfModule alias_module>
    ScriptAlias /cgi-bin/ "%hostdir%/cgi-bin/"
  </IfModule>

# а эти 2 строки я бы добавил в следующую версию =)
  php_admin_value open_basedir "%hostdir%"
  php_admin_value doc_root "%hostdir%"
</VirtualHost>


ну и естественно я закомментировал строки со стандратными сертификатами в файле extra/httpd-ssl.conf, чтобы не было войны :D

При запуске ОпенСервера в отладочном режиме, все начинает запускаться, затем cmd окно с httpd.exe просто пишет "...PAUSE ... нажмите любую кнопку..." и в окне лога написано "Apache 2.4 не смог запуститься".

Собственно вопрос и призыв к помощи: куда копать? Максим, может быть Вы сталкивались с подобным в своей богатой на опыт жизни? Я даже пробовал убирать различные переменные, добавленные мною в секцию вирт.хоста, оставляя только сам сертификат и ключ к нему, результат не менялся :?
<VirtualHost %ip%:%httpsport%>
   SSLEngine on
   SSLCertificateFile c:/op/server/http/Apache-2.4.2/conf/ssl.crt
   SSLCertificateKeyFile c:/op/server/http/Apache-2.4.2/conf/ssl.key

  ...

</VirtualHost>

Аватара пользователя
Максим
Сообщения: 4878
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 25 май 2012, 18:43

c:/op/server/http/Apache-2.4.2/conf/ssl.crt это реальный путь и файл там действительно есть?

Я бы вам рекомендовал закинуть ключ и сертификат в папку к остальным (дефолтным) только переименуйте, и потом по аналогии подключите их к нужному хосту с помощью файла vhost.txt (вы же читали справку ?) заменив имя стандартных сертификата и ключа на ваши.

hjet
Сообщения: 7
C нами: 4 года 6 мес

Непрочитанное сообщение hjet » 25 май 2012, 19:01

Максим писал(а):c:/op/server/http/Apache-2.4.2/conf/ssl.crt это реальный путь и файл там действительно есть?

Я бы вам рекомендовал закинуть ключ и сертификат в папку к остальным (дефолтным) только переименуйте, и потом по аналогии подключите их к нужному хосту с помощью файла vhost.txt (вы же читали справку ?) заменив имя стандартных сертификата и ключа на ваши.


Да Максим, Вы правы, мне тоже такая идея приходила на ум, но в ввиду огромного (даже пугающего) кол-ва букв в моем первом посте, я побоялся писать еще и то, что уже попробовал тупо заменить стандартные рабочие сертификаты на мои корявые (в смысле руки :lol:). Вообщем думаю как протрезвею (О нет нет! Сертификаты я ставил трезвым 8-) ) попробую для теста запустить дефолтный ОпенСервер и, ничего не меняя, попробовать опять поставить сертификаты :mrgreen:

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

Аватара пользователя
Максим
Сообщения: 4878
C нами: 5 лет 11 мес
Контакты:

Непрочитанное сообщение Максим » 25 май 2012, 19:05

Ах да, сегодня же пятница развратница :-)))))) Ну ok, как протрезвеете попробуйте и отпишитесь, помогу чем смогу :mrgreen:

hjet
Сообщения: 7
C нами: 4 года 6 мес

Непрочитанное сообщение hjet » 30 май 2012, 02:06

Разобрался, оказалось, что надо снимать защиту с файл-ключа, перед установкой на сервер.

Напишу как снимать, если кому понадобится. Делается все просто - кидаем файл-ключ (например ssl.key, но я вообще кинул туда все 4 файла - мало ли :D ) в папку bin (где httpd.exe и openssl.exe), открываем окно командной строки, переходим в папку bin (а если Вы особо рукастый :lol: cmd у вас будет стартовать сразу из нужной папки) и выполняем:
openssl rsa -in ssl.key -out ssl.key

Нас попросят ввести пароль, который мы вводили при генерации сертификата, вводим его ручками (скопировать -> вставить не получится 8-) я намучался, у меня пароль фейсролл по клаве :oops: ). Пароль при вводе не отображается никак, просто вводите и жмите enter, появится writing RSA key (если вместо этой надписи появятся куча ошибок и предупреждений - значит ошиблись в пароле, повторяем манипуляции пока не увидим, что файл-ключа записан). Закрываем окно, переносим файл(ы) в папку conf, подключаем по инструкции от регистратора. Должно все работать.

Аватара пользователя
Ivan08
Сообщения: 5
C нами: 1 год

Непрочитанное сообщение Ivan08 » 21 июл 2016, 19:42

Господа, а если по простому, какой путь, точнее в какую папку закидывать все эти сертификаты и ключи.
Я не программист, обычный пользователь ПК. Имею свой сайт магазина. И мне надо установить на сайт сертификаты. Чтобы открывалось https://
Это нужно для настройки протокола Яндекс кассы.
Разработчики моей CMS написали что устанавливать надо в опенсервер.


Вернуться в «Обсуждение Open Server»

Кто сейчас на конференции

Сейчас этот форум просматривают: Yahoo [Bot] и 2 гостя