Cisco Secure Client での SSL-VPN 接続を Entra ID で SSO 出来るように設定する
Cisco ASA (Secure Firewall) への SSL-VPN を Entra ID と SAML 連携し、SSO する為の設定手順をメモしておきます。 以下の Microsoft 公式サイトにも詳細な説明があります。
- Microsoft Entra シングル サインオン (SSO) と Cisco Secure Firewall - Secure Client の統合
- Microsoft Entra single sign-on (SSO) integration with Cisco Secure Firewall - Secure Client
検証環境¶
対象 | バージョン |
---|---|
Cisco ASA | 9.16(4) |
作業の流れ¶
作業は以下の流れで進めます。
- ASA 用のサーバ証明書を発行する (参考: Cisco ASA 9.1 に Let's Encrypt なワイルドカード証明書を SSL-VPN 用にインポートする)
- Entra ID にエンタープライズアプリケーションを登録する
- ASA に SSO 設定を実施する
ASA の SSL-VPN 設計 (設定) は勿論必要ですが、それとは別に下記の設計要素を事前に整理しておく必要があります。 これらの値を Entra ID 側にも設定することになります。
項目 | 設定例 |
---|---|
ASA が SSL-VPN を受け付ける FQDN | vpn.example.com |
ASA へ設定する VPN 用トンネルグループ名 | TunnelGroup1 |
Entra ID 側の設定¶
Azure Portal へログインしたら Entra 管理センターへアクセスします。
Step.1¶
アプリケーション
→ エンタープライズアプリケーション
をクリックします。
Step.2¶
新しいアプリケーション
をクリックします。
Step.3¶
検索ボックスに Cisco Secure Firewall
と入力し、表示された「Cisco Secure Firewall - Secure Client」をクリックします。
Step.4¶
名前
へアプリケーションの名前を入力します。 機能には影響しませんので、管理者が見て分かりやすい名前を入力します。 名前の入力が完了したら 作成
をクリックします。
Step.5¶
エンタープライズアプリケーションが作成されました。 シングル サインオン
をクリックします。
Step.6¶
SAML
をクリックします。
Step.7¶
以下の画面が表示されます。 「1. 基本的な SAML 構成」は情報を入力する必要があります。 「3. SAML 証明書」と「4. 〜 のセットアップ」は表示されている情報を控えておき、後の手順で ASA へ設定する必要があります。 詳しくは次のステップで内容を説明します。
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> |
Step.9¶
「3. SAML 証明書」から「証明書 (Base64)」の ダウンロード
をクリックし、Entra 側のサーバ証明書をダウンロードしておきます。
Step.10¶
「4. 〜 のセットアップ」から「ログイン URL」と「ログアウト URL」を控えます。 今回、両者は同じ値でした。
Step.11¶
ユーザーとグループ
をクリックします。
Step.12¶
`ユーザーまたはグループの追加` をクリックし、VPN 接続を許可したいユーザ / グループを追加します。 これで Entra 側の設定は完了です。
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
!
!