ciphers list 更新

Xperia XZsをAndroid OS 8.0に更新しました。

Android OS 7.0の弊害として、ビデオアプリでSony製機器以外からの録画番組が再生できなくなりました。
さらに標準ブラウザーのchromeから当サイトへのアクセスができなくなりました。
それはそのまま8.0でも同じです。

エラーは「ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY」です。
Xperia XZsのChromeからだけエラーが発生しました。

SSL Labsの評価結果はBです。
いつのまにA+からBになったのやら・・・

どうやらCiphers Suiteがよくないようです。
nginxのssl_ciphersのデフォルト値であれば問題ないのですが、制限したい理由であえて明示的に設定していました。
その設定を更新していなかったのが原因のようです。
SSL LabsのCiphers SuiteにAndroid 8.0は記載がないのでAndroid 7.0の箇所を見ると「Server negotiated HTTP/2 with blacklisted suite」になっていたので、エラーが出るのは当然のようです。
Server sent fatal alert: handshake_failure」だと、エラーは「ERR_SSL_VERSION_OR_CIPHER_MISMATCH」が表示されると思います。

ssl_ciphersを「AES256+EECDH:AES256+EDH:!aNULL」にして思い通りになりました。
ついでに、 Pregenerated Diffie-Hellman parametersを4096bitで生成しなおし、ssl_ecdh_surveを「secp521r1」から「 secp521r1:secp384r1:prime256v1」に変更しました。
効果があるのかどうかは不明です。
SSL Labs

 

ディストリビューション

CentOS 7.x