Fusicきばんブログスマートフォン用の表示で見るFusicきばんブログFusic基盤ユニットの非公式技術ブログこの広告は、90日以上更新していないブログに表示しています。OpenSSL基盤ユニットの貞方(@sadapon2008)です。今回は刺さる人には刺さるCentOS5/RHEL5系でSHA-2/TLS1.2のアウトバウンドのhttps通信の実現方法を検討してみたいと思います。背景CentOS5/RHEL5系はすでにサポートが切れていますが、諸事情でまだ稼働しているシステムがあったりします。1.0.1以降が必要)。TLSのバージョンもAPIサービスによっては1.2でしか受け付けないものも出てきています。そこで、CentOS5/RHEL5系で外部とSHA-2/TLS1.2のhttps通信を行う方法を検討してみました。最新のOpenSSLをソースコードからコンパイルしてインストールする最初に思いつくのは、最新のOpenSSLをソースコードからコンパイルしてインストールすることです。標準パッケージと競合しないようにインストールしないと危険です。ソースコードからコンパイルしてインストールする必要があります。PHPなどサーバサイドのアプリケーションなどでそれらを利用するには、アプリケーションのソースコードの大幅な変更も必要になります。別途リバースプロキシサーバを用意するCentOS5/RHEL5より新しいOpenSSLを利用できるCentOS7/RHEL7などでリバースプロキシサーバを用意して、そちら経由でhttps通信を行うことも考えられます。「https://api.hoge.com」のURLでアクセスしていたものが、「http://(リーバスプロキシサーバのIPアドレス)」のURLでアクセスするように構成することが可能です。この方法の場合、PHPなどサーバサイドのアプリケーションはアクセスするURLの修正だけで済むため、案1.に比べたら変更量を抑えられます。別途サーバを準備する必要があります。1.7が含まれています。1.7はSHA-2/TLS1.2に対応していますので、Javaで動くリバースプロキシサーバを動かせば、別途サーバを用意する必要がありません。Javaはずぶの素人なのですが、下記のGithubのコードを参考にJettyの組み込みプロキシを使うプログラムを作成してみました。github.com作成したものがこちらになります。github.comgradlewを使っていますので、以下のようすればビルドできると思います。fatJarビルドに成功したら、以下のようにコマンドを実行すると「http://127.0.0.1:8080」で待ち受けするリバースプロキシとして動作します。8080この状態で下記のようにするとSHA-2/TLS1.2のサーバに対してhttps通信を行うことができます。http://127.0.0.1:8080/正直Jettyの中身はまだよくわかっていないところもあるのですが、superviosrなどと組み合わせればデーモン化したりもできそうです。Clash脆弱性対応まとめ基盤ユニットの貞方(@sadapon2008)です。Slack)月別アーカイブリンク株式会社FusicFusicキャリア採用ページはてなブログをはじめよう!fusicさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。