NTT communications が運用するOpenStackのクラウド基盤である、Enterprise Cloud上にWebアクセス時のワンタイムパスワード認証/OTPのサーバーを構築します。
NTT communications社のEnterprise Cloud
Webへのアクセス認証は、従来のID/パスワードに加え、ワンタイムパスワードの多要素認証 / Multi-Factor Authenticationに対応しています。リモートワークやテレワーク時のスマフォやPCなどの端末からも、Webサイトへ安全にアクセスさせることが出来ます。
サーバー構築の方針は、以下とする
- Webへのアクセス認証は多要素認証に対応すること
- CentOS / RedHat 7.x で動作すること
- クライアント側も導入しやすい事(費用・汎用性)
- ソフトウエアトークンに対応している事
- システムの導入・運用&保守が簡単な事
- Webサーバーは自社で運用出来ること
- リバースプロキシに対応している事
ワンタイムパスワードとしては、ハードウエア・トークンやソフトウエア・トークンなどの各種の方式があります。ハードウエアトークン(パスワード生成器)は、専用のハードの為に導入時に費用がかさみますがソフトウエア・トークンの場合には、OSSや無償のソフトなどもあり、導入時のコストを抑えることが出来ます。
ワンタイムパスワード認証を利用した各社のWebサービスとしては
- NTT communications社のEnterprise Cloudのログイン認証
- Amazon
- Microsoft
- Dropbox
- 仮想通貨のサイト
- インターネットバンキング
などがあります。これらのサービスは、時間ベースのワンタイムパスワード方式(TOTP)を採用しています。
RFC 6238で規定されたTOTP/時間ベースのワンタイムパスワードでは、サーバーとクライアントで共有する秘密鍵(共有鍵)と現在時刻から、認証コードを計算するアルゴリズムで一定時間毎(例 30秒毎)に、ワンタイムパスワードでの認証コードが変わります。
TOTPに対応したクライアント・ソフト(ソフトウエアトークン)としては
Google Authenticator
- iOS/androidに対応
- バックアップ機能なし
Authy
- iOS/android 対応
- Windows/Mac/Linux 対応 (Chromeブラウザの拡張機能)
- Chrome OS 対応
- バックアップ機能あり
iiJ SmartKey
- iOS/android 対応(日本語対応)
WinAuth
- Windows 対応
などです。他にもRFC 6238に準拠したTOTPに対応の有償のハードウエアトークンやソフトウエアトークンなどもあります。
サーバー側の機能としては、
-
- NTTコミニュケーションズのEnterprise Cloud上で運用出来るWebサーバー
- 多要素認証に対応(ワンタイムパスワード & ID / パスワード)
- CentOS / RedHatで動作
- システムの導入・運用&保守が簡単な事
の条件を満たすサーバーとして、CentOS /RedHatで動作する 「Powered BLUE 870/OTP 」を利用します。
このサーバーは、GUIからの操作で全ての設定/運用/保守が行なえるオールインワンのアプライアンス・サーバーです。ひとり情シス環境でも簡単に運用が出来ます。またSSLクライアント認証との併用も可能です。(多要素認証 /Multi-Factor Authentication)
「Powered BLUE 870/OTP 」のワンタイムパスワードの方式としては、Google、Amazon、Microsoft、Facebook、仮想通貨のサイトなどでも、一般的に使われているGoogle Authenticator(*1) やFreeOTPのトークン(パスワード生成器)のフォーマットに対応しています。
(注意 *1 Google などのアカウントやサービスを利用しているわけではありません)
ユーザー側では、Google Authenticator / Authy / iiJ SmartKey / WinAuth などのトークンから「Powered BLUE 870/OTP 」のワンタイムパスワード認証機能を利用することが出来ます。
Enterprise Cloud でのPowered BLUE サーバーのセットアップ方法
に沿って、「Powered BLUE 870」サーバーの設定します。
仮想サイトを作成
Webサイトを運用する仮想サイトを作成します
例 test-opt.mubit.com
Webページを作成
仮想サイトにWebページを作成。Webページは、手動でのWebページデータの設置の他に、フリープラグインのWordPressでのWebページの作成も出来ます
Powered BLUE へのWordPressのインストール&設定を参照
仮想サイトのWebページをLet’s Encrypt/自動更新対応で常時SSL化する場合には、
Powered BLUEの仮想サイトへLet’s Encryptを設定を参照
認証設定
仮想サイトのWebへアクセス時にワンタイム・パスワード認証を設定する
- 仮想サイト&ディレクトリを指定
- 例 サイトのトップdir / に 認証設定の場合
- SSL接続強制の有無
などを指定します
ワンタイムパスワード認証設定
- ユーザーを登録(ユーザーの一括登録も出来ます)
- ユーザー毎にへワンタイムパスワード認証を許可/不許可を設定します
- 例 鈴木 二郎 へワンタイムパスワード認証を有効に設定
共有鍵の表示
- ユーザ側のソフトウエアトークンを起動して、QRコードをスマフォで読み撮り共有鍵を登録します
- QRコード読み撮りのカメラの無いPCなどへもコード表示で共有鍵の登録が出来ます(文字列表示)
利用端末の設定
ユーザーが利用する端末へのソフトウエアトークンのインストールは
を参照下さい
ワンタイムパスワード表示
自分の端末のソフトウエアトークンで「ワンタイムパスワード」を表示させます
Webサイトへアクセス
Powered BLUE 870/OTP 上の Webサイト
- 例 test-opt.mubit.com へアクセス
「アカウント」と「ワンタイムパスワード」と「ユーザーパスワード」を入力
認証成功
認証が通った場合、Webページが表示されます
リバースプロキシ連携
「Powered BLUE 870/OTP 」はリバースプロキシも同居させての運用(オールインワン運用)にも対応しています。
ワンタイムパスワード認証後に、既存のWebサービスにリダイレクトさせることが出来ます。
リバースプロキシでのリダイレクト例
既存のWebサービスとの連携の例
- NTTデータ イントラマートワークフロー
- エイトレッド X-point
- NIコラボスマート
- 楽々Workflow II
- eValue NS
- サイボウズ
- デスクネッツ
- Active! mail
- Powere egg
- RoundCube
- Aipo
- WaWaOffice
- Seagull Office
- OpenWebMail
- Zabbix
- Proself
- FileBlog
Powered BLUE 870/OTP の運用先としては、NTT コミニュケーションズのEnterprise Cloud以外にも
- AWS
- Fujitsu Cloud Service for OSS / 富士通
- VMware / Hyper-V
- WebARENA / NTTPC コミュニケーションズ
- Azure
- VPS
などでも運用が可能です。
ワンタイムパスワード認証に加えて、SSLクライアント認証の併用での多要素認証も可能です