TrustLoginを利用/SAML対応のリバースプロキシで社内Webへ安全にアクセス

IDaaS/idPのTrustLoginを利用して、社内LAN側に設置のシングルサインオンに未対応のWebサーバーに、SAML2.0対応のSP機能を持つリバースプロキシ/Reverse Proxy経由してアクセスする場合の構成です

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-12.png

ユーザーアカウント不要

SP側のリバースプロキシサーバーにはユーザーアカウントを作成することなくSAML認証を行い、内部のWebサーバーへ中継させることが出来ます。また部門や社員、会員毎ごとにリバースプロキシへのアクセスコントロールの設定・運用にも対応しています。

ブラウザ

社内Webへのアクセスに際して、モバイル用の閉域網やVPNなどは不要です。利用者は、ブラウザのみで利用できます。

https://www.mubit.co.jp/sub/products/blue/img2/idp-sp-1.png

 

SP(サービス・プロバイダ)

SPとしては、SAML2.0に対応したSSOのリバースプロキシ機能を持つPowered BLUE Reverse Proxy  for SSO/IDaaS」を利用します。

https://www.mubit.co.jp/sub/products/blue/img2/pb-vm-3.png

この製品は

  • SAML2.0対応のWeb&リバースプロキシ機能
  • Web/Mail/DNS/ftp(インターネットサーバー機能)
  • WordPress /  Let’s Encrypt (フリープラグインで提供)
  • 仮想アプライアンス
  • SSLクライアント認証
  • ワンタイムパスワード認証
  • ひとり情シスでの運用に対応

のWebサーバーです。CentOSやRedHatに対応しておりAWSなどのクラウド環境や、VMware/Hyper-Vなどの仮想環境でオールインワンで運用することが出来ます。

自社で運用出来るリバースプロキシでは、idPへのアクセス時の認証の他に、リバースプロキシ独自で、SSLクライアント認証やワンタイムパスワード認証を設定することが可能です。社内LAN側へのアクセスに際して自社のポリシーを個別に適用したい場合などには有効です。

 

idP(アイデンティティ・プロバイダ)

idPとしてはSAML2.0に対応した TrustLoginの他、G suite、Azure ADやCloudGate UNO、HENNGE ONE(旧HDE ONE)、OneLogin、Okta等のIDaaSなどや、OpenAM、Keycloakなどと連携が出来ます。

 

SP(サービス・プロバイダ)

「Powered BLUE Reverse Proxy for SSO/IDaaS」をSAML2.0のSP(サービスプロバイダ)として設定します

 

SAML2.0の設定例

http://wp-sam.mubit.jp/ 以下の指定ディレクトリにSAML2.0の認証を設定する例です

を利用します。

idPとSPにそれぞれ、SAML認証の設定を行います。

 

構成例

リバースプロキシ構成での設定例です

SAML/SP リバースプロキシのWebサイト  例 https://wp-sam.mubit.jp

  • リバースプロキシ上でSAML2.0の認証を行います
  • SAML認証後に、リバースプロキシにより指定のサイトへリダイレクトさせます

 

ネットワーク構成

ブログのサイトへリレイ

idP -->>SP (Reverse Proxy )https://wp-sam.mubit.jp/blog -->>https://sni-1.mubit.jp/blog/

 

Webメールのサイトへリレイ

idP -->>SP (Reverse Proxy )https://wp-sam.mubit.jp/webmail/ -->>https://sni-1.mubit.jp/webmail/

 

設定構成

以下のようなリバースプロキシ構成での設定例です

例 User —> https://wp-sam.mubit.jp/blog —-> https://sni-1.mubit.jp/blog/

例 User —> https://wp-sam.mubit.jp/webmail/ —> https://sni-1.mubit.jp/webmail/

 

SP側の設定

Powered BLUE Reverse Proxy  for SSO/IDaaSにリバースプロキシを運用する仮想サイトを作成

例 http://wp-sam.mubit.jp

 

Webサーバの有効化

Webサーバーを有効にする にチェックを入れます

仮想サイトのSSL化

リバースプロキシを運用するWebサイトのSSL化を行ないます。SAML認証に際しては、WebサイトのSSL化が必須です。

SSLのサーバー証明書としては

  • サイトのSSL自己証明
  • パブリックなSSLサーバー証明書
  • Let’s EncryptでのSSLサーバー証明書

に対応しています。

 

WebサイトのSSL自己証明の場合

SSLを有効にする にチェックを入れます

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/B870-saml-2.png

 

パブリックなSSLサーバー証明書の場合

必要情報を記載して「署名リクエストの作成」ボタンで作成したテキストを、SSLサーバー証明書を発行する機関へ送付します。

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2015/12/csr-1.png

  • 「署名リクエストの作成」でファイルを保存
  • 作成された「署名リクエスト」 ファイル signig-request.txt を、公的なSSLサーバー証明書の発行機関へ送付

signing-req-1

  • 公的機関で発行された、サーバー証明書を 「インポート」 します
  • 中間証明書のインポートにも対応しています

SSLサーバー証明書が発行されたら「インポート」ボタン操作でSSLサーバー証明書をインポートします

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2015/12/ssl-import-1.png

 

Let’s Encryptの場合

フリープラグイン機能を利用して、Let’s Encryptプログラムをインポートします

FreeSSLを選択

「インストール」 ボタンをクリック

 

Let’s Encryptインストール後に 「有効にする」 にチェックを入れます

 

リバースプロキシ

作成した仮想サイトにリバースプロキシを設定します

複数のリバースプロキシ先/バックエンドを指定できます

 

例 https://wp-sam.mubit.jp/blog/  —->  https://sni-1.mubit.jp/blog/

例  https://wp-sam.mubit.jp/webmail/—>  http://sni-1.mubit.jp/webmail/

 

SAML2.0設定

SAMLのエンドポイントを指定します  例 /

idP側のxmlのメタデータをSPへインポートします

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-13.png

idP側のxmlのメタデータをインポートします

SP側のxmlのメタデータをダウンロードします

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-13.png

idP側で作成のメタデータ(xml)をアップロードします

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-14.png

SAML2.0の認証をかけたいdirを指定します

例 /blog

https://wp-sam.mubt.jp/blog/   にSAML認証が適用されます

グループアクセスでのコントロールが不要の場合には、SP側はここまでの設定です。

https://wp-sam.mubt.jp/webmail/    にSAML認証を適用させる場合も、同様の設定を行います

 

 

attributeの指定

グループでのリバースプロキシへのアクセスコントロールを行なう場合に、attributeを追加で設定します

それぞれのパスに対して、idP側で設定の attribute-value もしくは ロール の指定が出来ます

部門毎やグループ毎などにリバースプロキシへのアクセスコントロールを行ないたい場合には、便利な機能です。

  • 例 営業部・開発部・総務部はidPでリバースプロキシへのアクセスを許可する
  • 例 特定の役職以上はリバースプロキシへのアクセスを許可する

attribute=”groups”    value=”  mbt”  でのアクセスを許可の場合の設定例

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-17.png

 

samlの有効化

設定のSAMLを有効にします

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-15.png

 

 

idPの設定

idP/IDaaSでSAML2.0をサポートしていれば、Powered BLUE Web for SSO/IDaaSと接続が出来ます。今回はidPとして日本国内のクラウド基盤で運用されているGMOグローバルサイン社の「 TrustLogin 」を利用します。「TrustLogin」は基本機能は無料で利用することが出来ます。

 

TrustLoginでの設定例

SAMLの新規アプリとして登録します(カスタム・コネクター)

右上の  +SAMLアプリ登録  をクリックします

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/trust-login-0-3.png

 

idP側のメタデータ(xml)をダウンロードして、SP側にアップローします

SP側のメータデータ(xml)の内容に準じて、以下の項目に必要事項を記入します

 

ログインURLなどを指定

例 https://wp-sam.mubit.jp/blog/

SP認証後の移行URL

例 https://wp-sam.mubit.jp/blog/

エンティティID

例 https://wp-sam.mubit.jp/endpoint/metadata

NAMEID フォーマット

例 transient

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-26.png

 

グループアクセスでのコントロールが不要の場合には、idP側のカスタム・コネクターはここまでの設定です

https://wp-sam.mubit.jp/webmail/    のSAML認証も同様の設定を行います

 

attribute-value やロールを指定の場合  設定例1

グループアクセスでのコントロールを行なう場合には、SAML属性を指定します

SP側 attribute=”groups”  value=”mbt”  の場合

idP側 固定値 groups    固定値 mbt

*注意 固定値でアサインの場合、このカスタム・コネクターを利用の全ユーザーがターゲットのリバースプロキシ(SP)へアクセス出来てしまいます

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-28.png

 

attribute-value やロールを指定の場合  設定例2(推奨)

SAMLのカスタム属性とTrustLoginのユーザー設定でアクセスコントロールします

SP側 attribute=”groups”  value=”mbt”  の場合

idP側 SAMLカスタム属性 groups    を設定

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-27.png

 

TrustLoginユーザー設定

TrustLoginのユーザー毎にSAMLカスタム属性 ”groups” を設定

アクセス可能なユーザーには valueとして ”mbt”  をアサインします

*この「鈴木 一郎」というユーザーは SMALカスタム属性値として

attribute=”groups”  value= ”mbt”  という値を持つのでSPへのアクセスが可能になります

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-21-1.png

 

アクセス

https://wp-sam.mubit.jp/blog/

https://wp-sam.mubit.jp/webmail/

 

初回

シングルサインオンでは、最初は一度  idP / TrustLogin へのログイン

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/b870-saml-12.png

 

リバースプロキシ

リバースプロキシでは、リダイレクト先のWebのURLは隠蔽され、リバースプロキシのURLの表示となります

 

https://d-sam.mubit.jp/blog/  —->  https://sni-1.mubit.jp/blog/(URLは隠蔽されます)

SAML認証経由でリバースプロキシ先のターゲットのwebサイトが表示されます

 

 

https://d-sam.mubit.jp/webmail/  —->  https://sni-1.mubit.jp/webmail/(URLは隠蔽されます)

SAML認証経由でリバースプロキシ先のターゲットのwebサイトが表示されます

 

多要素認証

idP側の認証とは別に、「Powered BLUE Reverse Proxy for SSO / IDaaS」のSP上で単独で

  • SSLクライアント認証
  • ワンタイムパスワード認証

を設定して運用する事が出来ます

 

SSLクライアント認証

SP上でPrivate CAを運用 SSLクライアント証明書を発行してSSLクライアント認証によるアクセスコントロールが出来ます。

https://www.mubit.co.jp/sub/products/blue/img2/idp-sp-2.png

 

SSLクライアント証明書

SP上で運用のPrivate CA でユーザー毎にSSLクライアント証明書の発行が出来ます

社内LAN側に設置のWebサイトへのアクセスに際して、IDaaS側の認証に加えて自社で運用出来るリバースプロキシに自社のポリシーに準じた独自の認証を設定したい場合には有効です。

SSLクライアント認証の場合には、ユーザー側でリバースプロキシのアクセスに際して、パスワード入力などが必要が無くシームレスな運用が出来ます。

 

クライアント認証設定

リバースプロキシにSSLクライアント認証を設定

このリバースプロキシにアクセスのユーザーは、このPrivate CAで発行のSSLクライアント証明書が無い場合にはアクセスが出来ません

 

SSLクライアント認証の例

グループウエアへのアクセスの場合

SSLクライアント証明書 〇   SSLクライアント証明書 ✕

https://www.mubit.co.jp/sub/products/ca/img2/ssl-2.png

 

ワンタイムパスワード認証

リバースプロキシにアクセスの際に、ワンタイムパスワードの入力を設定する事が出来ます

 

ID/パスワードの代理入力の中継

社内LAN側にあるID/パスワード入力の必要なWebシステムへ、idPからリバースプロキシ経由でアクセスさせて、ターゲットのWebサーバーへプリセットされたID/パスワードの自動入力での運用にも対応しています。

https://www.mubit.co.jp/sub/products/blue/img2/login-3.png

社外から社内LAN側に設置のWebサーバーへの自動ログインに有効です

https://www.mubit.co.jp/pb-blog/wp-content/uploads/2019/06/reverse-02.png

 

自社WebサイトをSAML認証で運用出来るWebサーバー

Powered BLUE SAML対応シリーズの製品には、SAML認証対応のWebサーバーもあります。自社で運用するWebサーバーへSAML認証機能を付けて運用することが出来る製品 https://www.mubit.co.jp/sub/products/blue/img2/arrow-finger.gif Powered BLUW Web SSO/IDaaS もあります。一般的なWebサイトやWordPress対応のWebサイトをSAML認証で運用することが出来ます。

https://www.mubit.co.jp/sub/products/blue/img2/idp-sp-4.png

 

SAML認証のデモ

Trustloginを利用したSAML認証のhttps://www.mubit.co.jp/sub/products/blue/img2/arrow-finger.gif デモサーバー

 

終わりに

デモ環境で試してみたい方や詳しい話を聞いてみたい方などは、ムービットの https://www.mubit.co.jp/sub/products/blue/img2/arrow-finger.gif お問い合わせフォーム からご連絡ください。