コンテンツにスキップ

Cisco Secure Client での SSL-VPN 接続を Entra ID で SSO 出来るように設定する

Cisco ASA (Secure Firewall) への SSL-VPN を Entra ID と SAML 連携し、SSO する為の設定手順をメモしておきます。 以下の Microsoft 公式サイトにも詳細な説明があります。

検証環境

対象 バージョン
Cisco ASA 9.16(4)

作業の流れ

作業は以下の流れで進めます。

  1. ASA 用のサーバ証明書を発行する (参考: Cisco ASA 9.1 に Let's Encrypt なワイルドカード証明書を SSL-VPN 用にインポートする)
  2. Entra ID にエンタープライズアプリケーションを登録する
  3. ASA に SSO 設定を実施する

ASA の SSL-VPN 設計 (設定) は勿論必要ですが、それとは別に下記の設計要素を事前に整理しておく必要があります。 これらの値を Entra ID 側にも設定することになります。

項目 設定例
ASA が SSL-VPN を受け付ける FQDN vpn.example.com
ASA へ設定する VPN 用トンネルグループ名 TunnelGroup1

Entra ID 側の設定

Azure Portal へログインしたら Entra 管理センターへアクセスします。

Step.1

アプリケーション → エンタープライズアプリケーション をクリックします。

image

Step.2

新しいアプリケーション をクリックします。

image

Step.3

検索ボックスに Cisco Secure Firewall と入力し、表示された「Cisco Secure Firewall - Secure Client」をクリックします。

image

Step.4

名前 へアプリケーションの名前を入力します。 機能には影響しませんので、管理者が見て分かりやすい名前を入力します。 名前の入力が完了したら 作成 をクリックします。

image

Step.5

エンタープライズアプリケーションが作成されました。 シングル サインオン をクリックします。

image

Step.6

SAML をクリックします。

image

Step.7

以下の画面が表示されます。 「1. 基本的な SAML 構成」は情報を入力する必要があります。 「3. SAML 証明書」と「4. 〜 のセットアップ」は表示されている情報を控えておき、後の手順で ASA へ設定する必要があります。 詳しくは次のステップで内容を説明します。

image

Step.8

「1. 基本的な SAML 構成」へ、以下の情報を入力します。 <FQDN> と <TUNNEL-GROUP-NAME> 部分は自身の環境に合わせて調整します。

項目 入力例
識別子 (エンティティ ID) https://<FQDN>/saml/sp/metadata/<TUNNEL-GROUP-NAME>
応答 URL (Assertion Consumer Service URL) https://<FQDN>/+CSCOE+/saml/sp/acs?tgname=<TUNNEL-GROUP-NAME>

image

Step.9

「3. SAML 証明書」から「証明書 (Base64)」の ダウンロード をクリックし、Entra 側のサーバ証明書をダウンロードしておきます。

image

Step.10

「4. 〜 のセットアップ」から「ログイン URL」と「ログアウト URL」を控えます。 今回、両者は同じ値でした。

image

Step.11

ユーザーとグループ をクリックします。

image

Step.12

`ユーザーまたはグループの追加` をクリックし、VPN 接続を許可したいユーザ / グループを追加します。 これで Entra 側の設定は完了です。

image

ASA 側の設定

ASA 側の設定は Microsoft Entra シングル サインオン (SSO) と Cisco Secure Firewall - Secure Client の統合 に以下と記載されています。 Entra ID 側を設定した際に出力された情報を設定していきます。 下記ではトンネルグループ名が AC-SAML になっていますが、これは Entra ID へ設定した値にあわせて修正する必要があります。

crypto ca trustpoint AzureAD-AC-SAML
  revocation-check none
  no id-usage
  enrollment terminal
  no ca-check
crypto ca authenticate AzureAD-AC-SAML
-----BEGIN CERTIFICATE-----
…
PEM Certificate Text from download goes here
…
-----END CERTIFICATE-----
quit
!
webvpn
 saml idp https://sts.windows.net/xxxxxxxxxxxxx/ (This is your Azure AD Identifier from the Set up Cisco Secure Firewall - Secure Client section in the Azure portal)
  url sign-in https://login.microsoftonline.com/xxxxxxxxxxxxxxxxxxxxxx/saml2 (This is your Login URL from the Set up Cisco Secure Firewall - Secure Client section in the Azure portal)
  url sign-out https://login.microsoftonline.com/common/wsfederation?wa=wsignout1.0 (This is Logout URL from the Set up Cisco Secure Firewall - Secure Client section in the Azure portal)
  trustpoint idp AzureAD-AC-SAML
  trustpoint sp (Trustpoint for SAML Requests - you can use your existing external cert here)
  no force re-authentication
  no signature
  base-url https://my.asa.com
 !
 tunnel-group AC-SAML webvpn-attributes
  saml identity-provider https://sts.windows.net/xxxxxxxxxxxxx/
  authentication saml
 !
!