Ошибка Puma mini SSL при подключении к серверу rails

#ruby-on-rails #openssl #ssl-certificate #puma

#ruby-on-rails #openssl #ssl-сертификат #puma

Вопрос:

Сервер Rails выдает ошибку SSL каждый раз, когда я пытаюсь подключиться к серверу.

 [34087] Puma startin& in cluster mode...
[34087] * Version 4.3.3 (ruby 2.6.5-p114), codename: Mysterious Traveller
[34087] * Min threads: 10, max threads: 10
[34087] * Environment: development
[34087] * Process workers: 1
[34087] * Phased restart available
[34087] * Listenin& on tcp://0.0.0.0:3001
[34087] * Listenin& on ssl://0.0.0.0:3000?cert=confi&/ssl.crtamp;key=confi&/ssl.keyamp;verify_mode=noneamp;no_tlsv1=falseamp;no_tlsv1_1=false
[34087] Use Ctrl-C to stop
[34087] * Startin& control server on unix:///tmp/puma-status-1596893456509-34087
[34087] - Worker 0 (pid: 34120) booted, phase: 0
2020-08-08 19:03:16  0530: SSL error, peer: 127.0.0.1, peer cert: , #<Puma::MiniSSL::SSLError: OpenSSL error: error:14209102:SSL routines:tls_early_post_process_client_hello:unsupported protocol - 337678594&&t;
  

Сертификат ssl и ключ уже предоставлены из конфигурации на сервере rails, но даже тогда я продолжаю получать ошибку ssl

Ответ №1:

Просто нужно было настроить мое приложение для запуска с SSL в локальной среде разработки. Шаги, которые я предпринял:

  1. Создайте сертификаты в корне папки вашего проекта:

$ openssl req -x509 -sha256 -nodes -newkey rsa:2048 -days 365 -keyout localhost.key -out localhost.crt

  1. Запустите сервер rails как:

$ rails s -b 'ssl://localhost:3000?key=localhost.keyamp;cert=localhost.crt'

Источник

Возможно, это может вам помочь. В вашем случае вы, вероятно, могли бы пропустить первый шаг и просто отредактировать rails s команду из шага 2, указав правильные пути к вашим localhost.key , localhost.crt файлам.

Также могу упомянуть, что в моем confi&/environemnts/development.rb я добавил в конец файла: confi&.force_ssl = true

Хотя не уверен, что это необходимо.

Комментарии:

1. Я уже пробовал это ранее, но у меня это не сработало.

2. Вот как я запускаю свой сервер puma. Это ничего не исправляет.