Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OpenSSL::SSL::SSLContextOpenSSL::SSL::OP_LEGACY_SERVER_CONNECTを設定する #3

Closed
wants to merge 1 commit into from

Conversation

thiger7
Copy link

@thiger7 thiger7 commented Feb 4, 2025

Why

Heroku スタックを v24 にアップグレードしたところ、OpenSSL のバージョンが 1.1 から 3系に上がった。OpenSSL 3.0では、一部のレガシーなTLS再ネゴシエーションがデフォルトで無効化されたため、HTTP の HEADリクエストで、SSL_connect returned=1 errno=0 peeraddr=210.160.220.115:443 state=error: unsafe legacy renegotiation disabled のエラーが出るようになった。

そこで、OpenSSL 3.0 の制約を回避するために OpenSSL::SSL::SSLContextOpenSSL::SSL::OP_LEGACY_SERVER_CONNECT を設定することで、古い TLS 設定のサーバーとも通信できるようにする。

本来であれば、今回エラー対象となったショップサーブのサーバーのTLS設定を変更してもらうのが良いが、いつ解消されるかわからないため、一時的な対応としてレガシーなTLS通信を許容する。

How to review it

  • CI が通っていること

Merge condition

Note

… を設定する。

- OpenSSL 3.x では「レガシーな TLS 再ネゴシエーション」がデフォルトで無効化されているため、これを有効化することで古い TLS 設定のサーバーとも通信できるようにする。
@thiger7 thiger7 self-assigned this Feb 4, 2025
@thiger7 thiger7 requested review from kano-e and azmin8744 February 4, 2025 08:06
@thiger7
Copy link
Author

thiger7 commented Feb 5, 2025

呼び出し元の EC Booster 側で OpenSSL::SSL::OP_LEGACY_SERVER_CONNECT を設定することにしたため本対応は close する。

@thiger7 thiger7 closed this Feb 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant