質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
OpenSSL

OpenSSLはSSL/TLSのプロトコルと一般的な暗号のライブラリを導入するオープンソースのソフトウェアのツールキットです。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

解決済

TLS1.2の有効化

Clementine
Clementine

総合スコア157

OpenSSL

OpenSSLはSSL/TLSのプロトコルと一般的な暗号のライブラリを導入するオープンソースのソフトウェアのツールキットです。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

3回答

0グッド

1クリップ

29673閲覧

投稿2018/06/29 02:28

編集2018/06/29 02:31

Apache、SSLプロトコルを、TLS1.2のみに設定しようとしていますがエラーになり解決方法を探しています。

サーバの環境は以下の通りです。

[root@xxx-xxx-xxx-xxx conf.d]# uname -a Linux xxx-xxx-xxx-xxx.example.com 2.6.18-238.el5 #1 SMP Thu Jan 13 15:51:15 EST 2011 x86_64 x86_64 x86_64 GNU/Linux [root@xxx-xxx-xxx-xxx conf.d]# openssl version OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

変更前

shell

1<VirtualHost *:443> 2 DocumentRoot /var/www/html 3 ServerName www.example.com 4 SSLEngine on 5 SSLProtocol all -SSLv2 -SSLv3 6 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW:!RC4:!DES-CBC-SHA:!EDH-RSA-DES-CBC-SHA 7 SSLHonorCipherOrder on 8 Header always set Strict-Transport-Security "max-age=315360000; includeSubDomains" 9 SSLCertificateFile /etc/httpd/conf.ssl/www.example.com/domainname.crt 10 SSLCertificateKeyFile /etc/httpd/conf.ssl/www.example.com/domainname.key 11 SSLCACertificateFile /etc/httpd/conf.ssl/www.example.com/domainname.ca 12</VirtualHost>

上記設定hではTLS1.0のみ有効になります。

変更後

shell

1<VirtualHost *:443> 2 DocumentRoot /var/www/html 3 ServerName www.example.com 4 SSLEngine on 5 SSLProtocol +TLSv1.2 6 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW:!RC4:!DES-CBC-SHA:!EDH-RSA-DES-CBC-SHA 7 SSLHonorCipherOrder on 8 Header always set Strict-Transport-Security "max-age=315360000; includeSubDomains" 9 SSLCertificateFile /etc/httpd/conf.ssl/www.example.com/domainname.crt 10 SSLCertificateKeyFile /etc/httpd/conf.ssl/www.example.com/domainname.key 11 SSLCACertificateFile /etc/httpd/conf.ssl/www.example.com/domainname.ca 12</VirtualHost>

上記設定では以下のエラーになります。

[root@xxx-xxx-xxx-xxx conf.d]# /etc/init.d/httpd restart httpd を停止中: [ OK ] httpd を起動中: Syntax error on line 46 of /etc/httpd/conf.d/php.conf: SSLProtocol: Illegal protocol 'TLSv1.2' [失敗] [root@xxx-xxx-xxx-xxx conf.d]# openssl s_client -connect 127.0.0.1:443 socket: Connection refused connect:errno=29

何卒ご教授頂きたく質問します。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答3

3

TLSv1.1 および TLSv1.2 は、OpenSSL 1.0.1 以降でサポートされています。
参考:mod_ssl ディレクティブ
ですので

OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

これでは通らなくて当然です。OpenSSL を 1.0.2 系に移行してください。

投稿2018/06/29 02:39

tacsheaven

総合スコア13667

CHERRY, YouheiSakurai, asahina1979👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

2

お使いの Opne SLLのバージョンは、0.9.8eです。

[root@xxx-xxx-xxx-xxx conf.d]# openssl version

OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

Open SSLで TLS1.2に対応しているのは、openssl-1.0.1e以降のバージョンです。

OpenSSL 0.9.8は、TLS1.2に対応していない(TLS1.0まで対応)ので、"Illegal protocol 'TLSv1.2'"というエラーメッセージが出ているのです。

「上記設定ではTLS1.0のみ有効になります」というのも、OpenSSL 0.9.8がTLS1.0までしか対応していないからです。

Open SSLのバージョンを1.0.1e以降のものに上げれば、 TLS1.2が使えるようになります。

投稿2018/06/29 02:40

coco_bauer

総合スコア6909

CHERRY, YouheiSakurai👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

1

ベストアンサー

OpenSSLがTLS 1.2に対応したのは、OpenSSL 1.0.1からなので(Changelog)、OpenSSL 0.9.8の環境ではTLS 1.2を使えません。

「el5」、つまりRHEL5(クローンも含めて)のアップデートはすでに打ち切られています。サーバOSごと入れ替えたほうがいいかもしれません。

投稿2018/06/29 02:40

maisumakun

総合スコア141334

YouheiSakurai👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

maisumakun

2018/06/29 03:09

「OpenSSLだけ入れ替える」という選択肢もないわけではないのですが、単に実行ファイルだけ差し替えればいいものではなくて、OpenSSLを使うアプリケーション(ApacheやPHPなど、およそHTTPSアクセスを行うすべてのアプリケーション)を再コンパイルする必要が出てきますので、そこまで手間をかけるならOSごとのアップデートのほうがいい、となりそうなレベルです。
Clementine

2018/06/29 10:22

OSを新しいものに入れ替えて解決しました。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

OpenSSL

OpenSSLはSSL/TLSのプロトコルと一般的な暗号のライブラリを導入するオープンソースのソフトウェアのツールキットです。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。