Powered BLUE 860 Private CA と RoundcubeへのSSLクライアント認証の設定を説明します。
今回はCA&リバースプロキシとRoundcubeが異なるサーバーで運用されている場合の構成例です
- SSLクライアント証明書発行・失効・認証 (CA / Powered BLUE 860 Private CA)
- リバースプロキシ ( Reverse Proxy / Powered BLUE 860 Private CA )
- Roundcubeの運用 (Web / Other Server)
を異なる サーバー上で運用することが出来ます.
Roundcubeへのアクセスは、
1)SSLクライアント証明書による認証(CA / Powered BLUE 860 Private CA)
2)ID/パスワードによる認証(Web / Linux Server)
の2要素認証のため、ID/パスワードの漏えいやパスワード総当たり攻撃によるWebへの不正アクセスに効果を発揮します。
RoundcubeのPowered BLUEへのインストール設定については、以下を参照ください。また、通常のLinuxサーバーへRoundcubeをインストールの場合には、適宜設定を行ってください
http://www.mubit.co.jp/plugin/roundcube/
Private CA&リバースプロキシサーバー側の設定
SSLのサーバー証明書の登録
- 「自己署名デジタル証明書の作成」 または 「署名リクエストの作成」 で作成します
パブリックSSLサーバー証明書の場合
公的なサーバー証明書を利用の場合には、ブラウザへの警告メッセージ
「このWebサイトで提示されたセキュリティ証明書は、信頼された証明機関から発行されたものではありません」
を抑制することが出来ます
- 必要事項を記入して、 CSR 作成の「署名リクエストの作成」 ボタンを押します
- 作成された 「署名リクエスト」 ファイルを保存
- この 「署名リクエスト」 ファイル signig-request.txt を、公的なSSLサーバー証明書の発行機関へ送付
- 公的機関で発行された、サーバー証明書を 「インポート」 します
- 中間証明書のインポートにも対応しています
プライベートCAの設定
仮想サイトで、Powered BLUEのプライベートCA機能を有効にして、この仮想サイトの「CA証明書の新規作成」をします。
SSLクライアント証明書の作成
SSLクライアント証明書のダウンロード
SSLクライアント証明書は、利用するブラウザにインストールします
SSLクライアント認証の有効化
[クライアント認証を有効にする] ことで、この仮想サイトへは、有効なSSLクライアント証明書がインストールされた ブラウザのみ、httpsでPrivate CAへアクセスが出来ます。
例 https://PrivateCA の仮想サイト/xxx
リバースプロキシ設定&有効化
プライベート認証局のサイトにアクセスしたクライアントを、SSLクライアント認証後にリバースプロキシで指定したサーバーへリダイレクトさせます
例 https://PrivateCAのサイト/tag-a/ -> http://www.zyx.co.jp/roundcube/
例 https://PrivateCAのサイト/tag-b/ -> https://www.zyx.com/owncloud/
例 https://PrivateCAのサイト/cybozu/ -> https://192.168.10.20/
SSLクライアント認証でCAサーバーへのアクセス - 承認された場合
有効なSSLクライアント証明書がインストールされたブラウザで、初回にアクセス時のブラウザでの表示例(Firefox)
https://Private CAのサイト/tag-a/
SSLクライアント認証 - 承認されない場合
有効なSSLクライアント証明書が無いクライアントからのアクセスの場合 ( IPhone )
https://Private CAのサイト/tag-a/
SSLクライアント認証後 - リバースプロキシ先のroundcubeのログイン画面が表示されます
Powered BLUEの デモサーバー
終わりに
SSLクライアント認証でWebサイトの認証を強化したい方、既存で運用のWebへのアクセスに認証機能を導入したい方。デモ環境で試してみたい方や詳しい話を聞いてみたい方などは、ムービットの お問い合わせフォーム からご連絡ください。