はてなブックマークを見てたら人気エントリでこの話題が流れてきました。
パッと見てセキュリティ的に良くない点があるため、簡単に整理します。
東京でセキュリティの仕事をしている小江戸民のブログ
はてなブックマークを見てたら人気エントリでこの話題が流れてきました。
パッと見てセキュリティ的に良くない点があるため、簡単に整理します。
Webで公開するシステムは、Webサーバだけではなく、外側にSSLアクセラレータやWebアプリケーションファイアーウォールなどのセキュリティやパフォーマンスのための装置があったりします。いずれにせよ、フロントより内側は管理された閉域ネットワークになります。
CloudFlareはCDNサービスであり、システムの最も外側を担います。CloudFlareから自サーバへの接続方法は3通りあります。わかりやすい冒頭のブログ記事より:
- Flexible SSL (つまりはSSLターミネーター。CFまではHTTPSで、CFから自分のサーバまではHTTP)
- Full SSL (CFと自サーバまでもSSL、ただし証明書の検証しない)
- Full SSL (strict)(CFと自サーバまでもSSL、証明書の検証もする)
インターネットというuntrasted networkをシステム内部、つまりバックエンドの一部として使用する構成になるため、「Full SSL (strict)」以外の選択肢はセキュリティ上の問題を認識した上で使用するべきです。特にFlexible SSLでの構成ではクライアントとCloudFlare間をSSLにした意味が失われてしまいます。
また、Full SSLにてオレオレ証明書を使用する場合では、SSL/TLSが提供するサーバ(クライアント)認証、暗号化、改ざん検出の3つの機能すべてを満たす事ができません。「通信路が暗号化されているからOK」ではないですよ。
という事で、CloudFlareはSSL/TLSの有無を問わずCDNとして使用するのが良いと思います。Full SSL (strict)でSSL/TLSするならば、自サーバも証明書ベンダから購入しましょう:-) 。あとCloudFlareの本機能のお知らせもチェック!:
コメントする