Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

SAML認証を設定する(CLI手順)

この設定では、Juniper Secure Connectでセキュリティアサーションマークアップ言語(SAML)ベースのユーザー認証を設定する方法を学習します。

Juniper Secure Connectは、SAML v2(SAML 2.0)を使用したリモートユーザー認証をサポートします。この設定例では、SRXシリーズファイアウォールサーバーがSAMLサービスプロバイダとして、SAML IdPを使用してJuniper Secure Connectユーザーを認証します。

ヒント:
表1:可読性スコアと時間の推定値

読書時間

1時間未満

設定時間

1時間未満

前提条件の例

以下の前提条件を満たしていることを確認します。

  • この例では、次の主要コンポーネントを理解します。

    • アクティブなIDプロバイダ(IdP)ユーザーアカウント。IdPの例として、OktaとMicrosoft Azureがあります。

      この例では、IdPとしてOktaを使用しています。IdP設定については、「 機能の概要」を参照してください。SAML 2.0 IdPの設定のステップバイステップは、このドキュメントの範囲外です。設定は、IdPとの契約によって異なります。

    • サービスプロバイダ(SP)として機能するSRXシリーズファイアウォール。

      このトピックでは、SAMLベースのユーザー認証向けのSRXシリーズファイアウォールの設定手順を説明します。vSRXの機能概要ステップバイステップの設定を確認する

    • SAMLベースのユーザー認証をサポートするWindows用のJuniper Secure Connectアプリケーション。

      Juniper Secure Connect for Windows」を参照してください。

  • サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。

  • サービスプロバイダを設定する前に、IdPのアカウントがあることを確認してください。IdPアプリケーションで必要な設定をすべて構成していることを確認します。IdPアカウントの以下の項目をメモします。

    • IdP上のAssertion Consumer Service(ACS)URLが、IdPからサービスプロバイダにSAMLアサーションを送信する https://<domain-name>/saml2/acs の形式であることを確認します。ACS URLは、Oktaでは シングルサインオン(SSO)URL であり、Microsoft Azureでは 応答URL です。

    • Microsoft Azure IdP設定でユーザー定義属性の名前 空間 を設定しないでください。

    • IdPエンティティIDをメモします。

    • sSSO URLをメモします。

    • 単一のログアウトURLに注意してください。

    • IdPから署名証明書をダウンロードし、ファイアウォールにロードします。

      この例では、 ca-profile-nameとしてEXAMPLE-CAが含まれています。

    • IdPアプリケーションでユーザーを作成していることを確認します。

  • サービスプロバイダであるファイアウォールが、インターネットに接続したインターフェイスを使用してIdP SSOとシングルログアウトURLに到達できることを確認します。

  • Web管理用のファイアウォール(サーバー側)自己署名証明書とSSLプロファイルが作成されていることを確認します。CA署名証明書を使用することもできます。

  • IKE の CA 署名証明書があることを確認します。

表2:ハードウェアおよびソフトウェア要件

ハードウェア要件

  • この機能をサポートする1つのSRXシリーズファイアウォール。

  • 最新のJuniper Secure ConnectアプリケーションがインストールされたWindowsラップトップ。

ソフトウェア要件

  • ikedプロセスでVPNサービスを実行するための junos-ike パッケージで機能をサポートするJunos OSリリース。

  • 前提 条件の例で説明されているIdPの詳細。この例では、IdPとしてOktaを使用しています。

始める前に

表3:リソースおよび追加情報

Juniper Secure ConnectのSAMLを理解する

詳細はこちら

SAML用のJunos設定ステートメントとCLIコマンドについて説明します。

saml認証順序(access-profile)、saml(アクセスプロファイル)、saml-optionsshow network-access aaa saml assertion-cacheshow network-access aaa statisticsrequest network-access aaa saml load-idp-metadatarequest network-access aaa saml export-sp-metadataclear network-access aaa saml assertion-cacheclear network-access aaa saml idp-metadata、およびを参照してください。ネットワークアクセスAAA統計情報のクリア

機能の概要

表4:機能の概要

機能コンポーネント

詳細

証明書

Web管理用の自己署名証明書またはCA署名証明書

jsc-web は、Web 認証用の PKI ローカル証明書です。

SSLプロファイル用の自己署名証明書またはCA署名証明書

jsc は、SSLプロファイルのサーバー側証明書です。

IKEのCA署名証明書

IKE-CERT は、IKEの署名付き証明書です。Juniper Secure ConnectアプリケーションをインストールしたクライアントラップトップでCA証明書を使用します。

IdPからの署名済み証明書

SAML IdP証明書、 EXAMPLE-CA はIdPからダウンロードされ、ファイアウォールにコピーされる署名証明書です。

IKE

IKEの提案

JSC-IKE-PRO は、Juniper Secure ConnectアプリケーションとのセキュアなIKE接続を確立するために使用されるアルゴリズムとIKEキーを定義するIKEv2プロポーザルです。

IKEポリシー

JSC-IKE-POL は、IKE ネゴシエーション中に使用される IKE プロポーザルを定義する IKEvIKE ポリシーです。

IKEゲートウェイ

JSC-GW は、IKEポリシーを使用するIKEvIKEゲートウェイです。Juniper Secure Connectで、IKEゲートウェイをアクセスプロファイルおよびTCPカプセル化プロファイルに関連付けます。IKEゲートウェイドメイン名として example.com を使用しました

IPsec

IPsecのプロポーザル

JSC-IPSEC-PRO は、アプリケーションとのセキュアなIKE接続を確立するために使用されるIPsecプロトコルとアルゴリズムを定義するIPsecプロポーザルJuniper Secure Connectです。

IPsecポリシー

JSC-IPSEC-POL は、IPsecネゴシエーション中に使用されるIPsecプロポーザルを定義するIPsecポリシーです。

SAMLアクセスプロファイル

SAML認証順序

アクセスプロファイル JSC-ACCESS は、認証方法として saml を定義します。これには、Juniper Secure Connectのアドレスプールの詳細と、関連するSAMLサービスプロバイダ名とIdPドメインの詳細が含まれています。

SAML IdP

SAML IdP名

example-idp は、この例で使用されているIdPの名前です。IdPドメイン名として example.org を使用しました。

SAML IdPエンティティID

http://www.example.org/abcd1234は、IdPを識別するURIである一意のエンティティです。メタデータXMLファイルには、IdPエンティティID情報が含まれています。[edit access saml identity-provider name settings]階層レベルのentity-idオプションで使用します。

SAMLログインURL

https://5075942.example.org/app/5075942_srx1examplenet_1/abcd1234/sso/samlは、IdPで利用可能なシングルサインオンURLです。[edit access saml identity-provider name settings signle-signon-url signle-signon-url]階層レベルのsingle-signon-url-nameオプションで使用します。

SAMLログアウトURL

https://5075942.example.orgは、IdPで利用可能なシングルログアウトURLです。[edit access saml identity-provider name settings single-logout-url]階層レベルのsingle-logout-url-nameオプションで使用します。

SAML IdP証明書

EXAMPLE-CAIdPで利用可能な署名証明書です。SAMLサービスプロバイダは、このIdP証明書を使用してユーザーを検証します。[edit access saml identity-provider name settings idp-certificate]階層レベルのidp-certificate-nameオプションで使用します。

SAMLユーザー属性

user1プリンシパルであるが、アクセスを要求します。SAMLユーザー属性は、IdP属性である名前と値のペアです。これらの属性には、IdPで設定された名、姓、メールアドレスなどのユーザー情報が含まれます。IdPは、SAMLアサーションを介してこの情報をサービスプロバイダに送信します。

ファイアウォールの設定時に、プリンシパルに関連する属性が必須かオプションかを指定します。

SAMLサービスプロバイダ

SAMLサービスプロバイダ名

vsrx-jsc は、この例で使用されているサービスプロバイダの名前です。SAMLのサービスプロバイダドメイン名として example.net を使用しました。

SAMLサービスプロバイダエンティティID

https://srx1.example.netは、サービスプロバイダを識別するURIである一意のエンティティです。[edit access saml service-provider name]階層レベルのentity-idオプションで使用します。

ヒント:SAMLドメイン名では大文字と小文字が区別されます。 Example.netはSAMLの example.netとは異なります。

リモートアクセス

プロフィール

jsc-saml は、IPsec VPN、ユーザーアクセスプロファイル、およびセキュアな接続クライアント構成設定を含むリモートアクセスVPNプロファイルです。

SSL

終端プロファイル

JSC-SSL-PRO は、TLS接続へのリモートアクセスIPsecトラフィックカプセル化のSSL終了プロファイルです。

セキュリティゾーン

信頼

サーバーなどの企業リソースに面するネットワークセグメント。

信頼できない

インターネットに面したネットワークセグメント。IdPはこのセグメントから到達可能であることに注意してください。

VPN

セキュアトンネルインターフェイスst0.0を使用したネットワークセグメント。

セキュリティポリシー

データトラフィックのタイプを選択できます。

  • JSC-ALLOW-OUT—trustゾーンからvpnゾーンへのトラフィックを許可します。一致基準は次のとおりです。

    • 送信元アドレス: 任意

    • destination-address: 任意

    • アプリケーション:任意

  • JSC-ALLOW-IN—vpnゾーンからtrustゾーンへのトラフィックを許可します。一致基準は次のとおりです。

    • 送信元アドレス: 任意

    • destination-address: 任意

    • アプリケーション:任意

  • default-permit—trustゾーンからtrustゾーンへのトラフィックを許可します。一致基準は次のとおりです。

    • 送信元アドレス: 任意

    • destination-address: 任意

    • アプリケーション:任意

  • default-permit- trustゾーンからuntrustゾーンへのトラフィックを許可します。一致基準は次のとおりです。

    • 送信元アドレス: 任意

    • destination-address: 任意

    • アプリケーション:任意

ソースNAT

VPN クライアントからのトラフィックが内部サーバーに到達できるようにするための送信元 NAT。

トポロジーの概要

この例では、Juniper Secure Connectクライアントがファイアウォール(vSRX)とのリモートアクセスVPN接続確立を開始します。ファイアウォールはSAML認証リクエストをJuniper Secure Connectに送信し、ユーザー認証についてIdPで確認します。認証が完了すると、ファイアウォールはSAMLアサーションを確認し、リモートアクセスVPNトンネルを確立します。

表5:トポロジーの概要

ホスト名

役割

機能

vSRX

  • リモートアクセスVPNサーバー

  • SAMLサービスプロバイダ

  • Juniper Secure Connectでは、ファイアウォールがリモートアクセスVPNトンネルを確立します。

  • Juniper Secure ConnectのSAMLベースのユーザー認証では、ファイアウォールはリモートアクセスVPNサービスを提供するSAMLサービスプロバイダとして機能します。このサービスプロバイダは、IdPのアサーションに依存してユーザーにアクセスを許可します。

クライアント

リモートアクセスVPNクライアント

Juniper Secure Connectでは、Juniper Secure Connectアプリケーションを使用するラップトップまたはコンピューターがファイアウォールとのVPN接続を開始します。

IdP

SAML IdP

Juniper Secure Connectでは、IdPがユーザーを認証し、サービスプロバイダにIDアサーションを提供します。IdPは、ユーザーの認証を確認するために認証アサーションを生成します。この例では、OktaがIdPとして機能します。

サーバー

trustゾーン内のサーバー

Juniper Secure Connectクライアントは、社内サーバーへのアクセスを試みます。

トポロジー図

図1:Juniper Secure ConnectSAML-Based User Authentication in Juniper Secure ConnectでのSAMLベースのユーザー認証

vSRXの設定手順

注:

DUTの設定例については、以下を参照してください。

この設定は、vSRXにのみ適用されます。デバイス固有の構成を適切に変更する必要があります。

  1. インターフェイスを設定します。
  2. セキュリティゾーンを設定します。
  3. セキュリティポリシーを設定します。
  4. 送信元NATを設定します。
  5. 証明書を設定します。
  6. Web管理を設定します。
  7. IKEプロポーザルを設定します。
  8. IKEポリシーを設定します。
  9. IKEゲートウェイを設定します。
    1. IKEゲートウェイオプションを設定します。
    2. クライアントが接続する外部インターフェイスのIPアドレスを設定します。Juniper Secure ConnectアプリケーションのゲートウェイアドレスフィールドにこのIPアドレス(https://172.16.1.254/<profile>)を入力する必要があります。
    3. デッドピア検出(DPD)を設定します。
    4. ゲートウェイをアクセスプロファイルおよびTCPカプセル化プロファイルに関連付けます。
  10. IPsecプロポーザルを設定します。
  11. IPsecポリシーを設定します。
  12. IPsec VPNパラメータとトラフィックセレクターを設定します。
  13. リモートアクセス設定を構成します。
    1. リモートアクセスプロファイルを設定します。
    2. リモートアクセスクライアント設定を構成します。
  14. リモートアクセス用のローカルゲートウェイとしてファイアウォールを設定します。
    1. アクセスプロファイルの認証方法としてSAMLを設定します。
    2. アクセスプロファイルのSAML設定を指定します。
    3. ネットワークアドレスプールをアクセスプロファイルに関連付けます。クライアントに動的IPを割り当てるためのアドレスプールを設定します。
    4. ファイアウォール認証を設定します。
    5. ファイアウォールがSSLプロキシサーバーとして機能するSSL終了プロファイルを設定し、クライアントからSSLセッションを終了します。サーバー証明書は、ローカル証明書識別子です。サーバー証明書は、サーバーのIDを認証するために使用されます。
    6. SSL VPNプロファイルを設定します。
  15. IdPやSP設定などのSAMLアクセスパラメーターを設定します。

検証

このセクションでは、この例の機能を検証するために使用できるshowコマンドのリストを示します。.

Juniper Secure ConnectアプリケーションでSAMLベースのユーザー認証を確認

目的

SAMlベースのユーザー認証を使用して、リモートアクセスVPN用にJuniper Secure Connectアプリケーションを接続します。

アクション

クライアントで以下の手順を実行します。

  1. CA証明書をクライアントラップトップの C:\ProgramData\Juniper\SecureConnect\cacertsに配置します。

  2. 接続プロファイルhttps://172.16.1.254/jsc-samlまたはhttps://srx1.juniper.net/jsc-samlとして入力します。次に、[接続] トグル ボタンをクリックして VPN 接続を確立します。

  3. システムが設定をダウンロードすると、 SAML認証用のユーザーIDウィンドウが表示され、SAMLユーザーIDの入力を求められます。SAMLユーザーIDを ユーザーID フィールドに user1@srx1.example.netとして入力します。

  4. システムは、デフォルトブラウザのIdP SSO URLにリダイレクトします。正しいパスワードとともに、ユーザー名 user1@srx1.example.net を入力します。

  5. ユーザー認証が正常に完了したら、ブラウザのポップアップを受け入れて、Juniper Secure Connectアプリケーションを起動します。

  6. IKE接続がバックグラウンドで実行されている間、ブラウザを閉じます。

  7. Juniper Secure ConnectアプリケーションがリモートアクセスVPN接続を確立することを確認します。

意味

ユーザーは、SAMLベースのユーザー認証方法で認証され、リモートアクセスVPN接続が確立 user1@srx1.example.net 。ユーザー名は、IdPの必須属性マッピングで定義された電子メール形式であることに注意してください。

SAMLアサーションキャッシュエントリの検証

目的

コマンドを実行して、SAMLアサーションキャッシュエントリを表示します。

アクション

動作モードから、コマンド show network-access aaa saml assertion-cache on vSRX を実行します。

意味

SAML認証アサーション、アクセスプロファイル、IdP設定で設定されたドメイン名、SAML認証済みユーザー名を含むキャッシュ情報を表示します。

加入者固有の AAA 統計情報の検証

目的

コマンドを実行して、加入者のユーザー名を表示します。

アクション

動作モードから、コマンド show network-access aaa subscribers on vSRX を実行します。

意味

アクティブな加入者セッションに関する情報を表示します。

SAML認証統計の検証

目的

コマンドを実行して、SAML認証の統計情報を表示します。

アクション

動作モードから、コマンド show network-access aaa statistics saml on vSRX を実行します。

意味

SAML認証統計情報を表示します。

IKE SAの検証

目的

コマンドを実行して、IKEセキュリティアソシエーション(SA)に関する情報を表示します。

アクション

動作モードから、コマンド show security ike security-associations on vSRX を実行します。

意味

ファイアウォールのIKEモードをIKEv2として表示し、Juniper Secure Connectクライアントである172.17.1.1とのSAを持っています。

IPsec SAの検証

目的

コマンドを実行して、IPsec SAに関する情報を表示します。

アクション

動作モードから、コマンド show security ipsec security-associations on vSRX を実行します。

意味

ファイアウォールに、172.17.1.1 を持つアクティブな IPsec トンネル SA(Juniper Secure Connect クライアント)が 1 つあることを示します。

IKEアクティブピアの確認

目的

コマンドを実行して、接続されている IKE ピアを表示します。

アクション

動作モードから、コマンド show security ike active-peer on vSRX を実行します。

意味

ファイアウォールに、Juniper Secure ConnectクライアントであるアクティブなIKEピア172.17.1.1が1つあることを示します。ファイアウォールには、ユーザーに割り当てられているピア IKE ID と認証済みリモート ユーザー名と IP アドレスも表示されます。

付録1:Juniper Secure Connectのトラブルシューティング

SAMLベースのユーザー認証で問題が発生した場合は、次の手順に従って問題のトラブルシューティングを行います。

  1. この機能はikedプロセスで動作します。コマンド request system software add optional://junos-ike.tgz を使用して、必ず junos-ike パッケージをインストールしてください。
  2. PKI、IKE、IPsec、リモートアクセスオプションのtraceoptionsを有効にします。たとえば、コマンド set security pki traceoptions file pki.log を実行して、PKI で traceoptions を有効にします。syslogとトレースログを確認します。
  3. SAMLアサーションキャッシュが無効になっているかどうかを確認します。SAMLアサーションキャッシュが無効になっている場合は、IDPからSAMLアサーションをキャッシュできるようにすることをお勧めします。saml-optionsを参照してください。
  4. アサーションキャッシュに、ユーザーに対して有効なエントリが含まれていることを確認します。SAMLベースのユーザー認証をサポートするには、アサーションキャッシュに有効なユーザーエントリが含まれている必要があります。キャッシュに有効なエントリーがない場合は、Juniper Secure ConnectアプリケーションでVPN接続の切断と再接続を手動で実行します。このアクションにより、アプリケーションはユーザーを再度認証し、アサーションキャッシュを再入力するように求められます。show network-access aaa saml assertion-cacheを参照してください。
  5. アサーション待機タイムアウトによりsyslogがAUTHD_SAML_AUTH_FAILEDを報告する場合は、コマンドset access saml service-provider yoursaml assertion-waittime waittimeを使用してアサーションタイムアウトを延長します。
  6. IdPメタデータをリロードするには、ネットワークアクセスのリクエストaaa saml load-idp-metadataを参照してください。
  7. サービスプロバイダのメタデータをエクスポートするには、ネットワークアクセスのリクエストaaa saml export-sp-metadataを参照してください。
  8. IKEセッションがタイムアウトしていることに気付いた場合は、コマンドset security ike session half-open timeout timeoutを使用してセッションを延長します。

付録2:vSRXでコマンドを設定する

vSRXでコマンド出力を設定します。

付録3:vSRXでの設定出力を表示

vSRXでコマンド出力を表示。

設定モードから、以下のコマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。