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

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

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

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Q&A

解決済

1回答

2509閲覧

Nginx+KUSANAGI+Let's EncryptでATSの要件を満たす

退会済みユーザー

退会済みユーザー

総合スコア0

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

0グッド

0クリップ

投稿2017/02/08 13:28

以下の質問をした者です。

Nginx+KUSANAGI+Let's EncryptのWordPressでiOS端末からSSLエラー

ConoHaのVPS(CentOS)に、KUSANAGIを使ってWordPressを構築しました。
WebサーバーはNginxで、Let's EncryptでSSL化してあります。

iOSの端末からアクセスした場合に、

An SSL error has occurred and a secure connection to the server cannot be made.

というようなエラーが出ます。

先の質問では、「ATSの要件を満たすように調整するとエラー解消できそう」との回答をいただきましたが、Nginxのssl_protocolsやssl_ciphersを調整してみましたが、iOS端末で表示させることができませんでした。

具体的に、Nginxの何をどのように調整すれば、iOSのATS要件を満足させることができるでしょうか?

よろしくお願いします。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

前回のte2ji様の回答でリンク先にあったテストツールの結果はどうだったのでしょうか?とりあえず、このテストツールに自分のホスト名をいれてみて、その結果をここに記載されている条件と照合して、全部満足していたのでしょうか?

具体的に、Nginxの何をどのように調整すれば、iOSのATS要件を満足させることができるでしょうか?

上記サイトからのコピペですが1個ずつチェックしてみましょう。

TLSのバージョン

TLS 1.2以上

テストツールの結果の Configuration の protocol のところで TLS 1.2 のみが yes になっていて、それ以外が no になっていればOKです。

暗号スイート

TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

テストツールの結果の Configuration の Cipher Suites のところで、上記のアルゴリズムだけが表示されていれば、OKです。上記以外のアルゴリズムが表示されていると、そのアルゴリズムも使えるということになるので、NG だと思います。

これらの2つがNGの場合は、nginx のパラメータを調整すれば解消できると思います。具体的には、Webサーバー nginx における SSL証明書設定の安全性向上 ~SSL Server Test で A+ 判定を目指して~などを参考に設定されてはいかがでしょうか。

あとは、サーバ証明書の方の適合条件になります。

サーバ証明書

OSに組み込まれている認証局によって発行された証明書
信頼されたルートCAによって発行されて、ユーザやシステム管理者によってインストールされた証明書

テストツールの結果のCertificate の Certification Paths を展開(右肩の+ボタンを押して)して、すべてのパスで In trust store となっていればOKだと思います。

サーバ証明書の署名する際のキー

2048bit以上のRSAキー
256bit以上の楕円曲線暗号キー(ECCキー)

テストツールの結果のCertificate の Keyが上記のいずれかであればOKです。たとえば、RSA 2048 bits となっていればOKです。

サーバ証明書のハッシュアルゴリズム

256bit以上のダイジェスト長であるSHA-2(つまり、SHA-256以上)

テストツールの結果のCertificate の Signature algorithm が上記の条件を満たしていればOKです。たとえば、SHA256withRSA となっていればOKです。ただし、ルート証明書も SHA2 でないとだめだとすると、 かなり厳しいです。
おそらく、ルート証明書のSHA1は許容されると思います。そうでないと、ほとんどのサーバ証明書ベンダが合格しないことになってしまいそうです。

サーバ証明書がこれらの条件に合致していない場合は、サーバ証明書を買い直すしかありません。

投稿2017/02/28 13:24

編集2017/02/28 13:39
mit0223

総合スコア3401

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/03/05 00:07

詳しい回答、ありがとうございます!具体的な確認項目がわかって、参考になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問