モバイル版ChromeのみがSSLエラーを吐くので黙らせた話

ども、はるろいどです✊

いきなりですが、このサイトをモバイルChromeで見てた人いらっしゃいますかね?

多分殆どだと思うんですけど…(Google Analyticsを見ながら)

で、前このサイトをSSL対応した際に、自分の環境で(僕はFirefoxユーザーです)ちゃんと動くのを確認してそのままにしてたんですけど、ひょんなことからモバイルChromeでアクセスしてみたらなんかヤバげなエラーが出てることに気付いたんですね…

screenshot_2016-12-01-14-30-11

多分SSL化したあとずっと出てたはずだから2ヶ月はこんな感じだったはずです…

PC版Chromeだと何も言われないのがなお辛い…

※僕の環境

サーバー:Apache2.4

OS:Ubuntu 14.04 LTS

鍵発行元:Let’s Encrypt←あんまり関係なさそう

で、エラー(NET::ERR_CERT_AUTHORITY_INVALID)でググってみるとまさにそれって感じのページがヒットしました

http://stackoverflow.com/questions/27892873/ssl-cert-err-cert-authority-invalid-on-mobile-chrome-only

なるほど…chain.pemも指定しないといけなかったのか

僕がLet’s Encryptを使い始めた際に見てたサイトにはApache2.2以前はこちらを~みたいに書いてあったので完全にスルーしてました…

というわけで、

/etc/apache2/sites-enabled/default-ssl.confをいじり、chain.pemを指定しました。

わかりにくいけどハイライトされてる部分(SSLCertificateChainFile /etc/letsencrypt/live/haruroid.0t0.jp/chain.pem)です

ここデフォルトではコメントアウトされてるんですよね。

chain.pemはcert-botで生産されるファイルなので場所を指定するだけでOKです。その場所もfullchain.pemとかと同じです。

 

—-おまけ—-

ついでにSSL3とTLS1.0,1.1も無効化しときます。これらにはPOODLEという怖い脆弱性が発見されれています。

正直ECサイトでもないブログにそんなもん必要か?って言われたらチーンですけどQUALY’S SSL LABSのSSL TESTのスコアが上がります(

あとRC4という暗号化方式も解読するアルゴリズムが見つかったかなんかで危ないらしいので無効化します。

これらの設定は

/etc/apache2/mods-enabled/ssl.confに書かれています。

一番下に書かれてます。

まず SSLCipherSuiteの部分(コメントアウトしてない方)に:+3DES:!RC4と付け加えます。
つまりSSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5:+3DES:!RC4みたいな感じです。

!RC4はRC4を無効化することを表し、+3DESはSSL3を無効化するとXP+IEな環境で見れなくなるらしいので入れます。

つぎ、SSL3,TLS1.0,1.1の無効化です。

SSLProtocolという部分がデフォルトで All – SSLv2だと思うので、そこに-SSLv3 -TLSv1 -TLSv1.1を追加します。

SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1みたいになります。

ここまで設定が終わったら

service apache2 restartをして鍵・SSL設定の更新をします。

https://www.ssllabs.com/ssltest/analyze.html

ここに自分のサイトを入れてA-ぐらいになってたら成功です。

僕はDからA-になりました(

なんで-がつくのかというと、自動リダイレクトがないからみたいです。まあ一応ダイアログ出してるし実際はAぐらいかな~って

 

ちなみに、TLS1.0,1.1を無効化するとAndroid4.3以前の標準ブラウザで繋がらなくなります(独自にアップデートされてる場合を除く)。多分アプリ内WebViewも繋がらなくなります

セキュリティを取るか利便性を取るか、取捨選択が必要ですね…

screenshot_2016-12-01-17-16-07 screenshot_2016-12-01-17-57-07

←SH-02E(Android4.1.2)

→SC-03E(Android4.3)

screenshot_2016-12-01-17-17-29 screenshot_2016-12-01-18-00-13

どちらもChromeやFirefoxを導入すれば、TLS1.2を使って通信できます。

SC-03Eストックに付属しているChrome35でも普通に使えたので、好きで標準ブラウザを使ってる人以外はそんなに問題はなさそうです。が、Yahoo検索のアプリとかはまんまWebView感がするのでもしかしたらみれなくなるかもしれません。

ちなみに、iOS6.1.3のSafariでは普通に見ることができます。

%e5%86%99%e7%9c%9f

さすがiPhone…

というわけで今回はこれで終わりです

ではでは~

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です