ASA5525-X + MS CA Windows Server 2012R2-二要素認証

PCI DSS規格に準拠するための認証に合格するには 2要素認証が必要でした。 シスコのソリューションをファイアウォールとして使用するため、それを使用することにしました...複雑なことはないように思われます-すべてが長い間研究されており、複数回設定されており、必要な指示、たとえば以下を簡単に見つけることができます:

テストラボガイド:Active Directory証明書サービスの公開キー基盤の2レベル階層を展開する


CISCO:デジタル証明書の設定


半径と2要素認証用の証明書を備えたCisco ASA(Microsoft CAを使用)


しかし、同様の「普遍的な」指示で通常そうであるように-それらは微妙な点を考慮せず、これは展開するときにほとんどの時間を占有します。 これらの瞬間についてお伝えしたいだけです。 これで時間を大幅に節約できることを願っています!



最初の不快な瞬間は、オフラインルートCAが下位発行CAの証明書を1年間発行したことです(!)
CAPolicy.inf:
[Version] Signature="$Windows NT$" [PolicyStatementExtension] Policies=InternalPolicy [InternalPolicy] OID= 1.2.3.4.1455.67.89.5 Notice="Legal Policy Statement" URL=http://www.contoso.com/pki/cps.txt [Certsrv_Server] RenewalKeyLength=2048 RenewalValidityPeriod=Years RenewalValidityPeriodUnits=20 CRLPeriod=weeks CRLPeriodUnits=26 CRLDeltaPeriod=Days CRLDeltaPeriodUnits=0 LoadDefaultTemplates=0 AlternateSignatureAlgorithm=1
      
      





したがって、証明書の有効期間を慎重に確認し、1年間発行された場合は、すぐに変更してください。 次のように変更できます。

[スタート]ボタンをクリックし、[実行]を選択します。

[ 名前]ボックスに「 regedit」入力し、 [OK]をクリックします。

次のレジストリキーを見つけて強調表示します。

HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ CertSvc \ Configuration \ <ccname>

右側のペインで、 ValidityPeriodをダブルクリックします。

値フィールドに次のいずれかを入力し、[OK]をクリックします。

日数

週間

月の

年数



右側のペインで、 ValidityPeriodUnitsをダブルクリックします。

値フィールドに必要な数値を入力し、[OK]をクリックします。 たとえば、2と入力します。

証明書サービスを停止して再起動します。 これを行うには:

[スタート]ボタンをクリックし、[実行]を選択します。

[名前]ボックスに「cmd」と入力し、[OK]をクリックします。

コマンドプロンプトで、次のコマンドを入力します。 各行の後にEnterキーを押します。

 certsvc net stop net start certsvc
      
      





exitと入力して、コマンドラインを終了します。




そして重大な間違いは、Microsoftからの警告を無視することでした。



注意注意

Windows XPおよびWindows Server 2003を実行している証明書クライアントは、代替の署名アルゴリズムをサポートしていません。 このようなクライアントが証明書を申請できるように、AlternateSignatureAlgorithm = 1行をCAPolicy.infファイルに追加しないでください。 詳細については、代替署名形式の使用に関する推奨事項を参照してください。


したがって、 AlternateSignatureAlgorithm = 1行をCAPolicy.infから削除します。そうしないと、ASAに証明書をインストールする際に問題が発生します。MicrosoftCA RSASSA-PSS Algorithm Issue with ASA

レジストリ内のパラメーターを変更することで解決します。

Windowsレジストリエディターバージョン5.00
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ CertSvc \ Configuration \%Your_CA_Name%\ CSP]

「ProviderType」= dword:00000000

「プロバイダー」=「Microsoftソフトウェアキーストレージプロバイダー」

「HashAlgorithm」= dword:00008004

"CNGPublicKeyAlgorithm" = "RSA"

「CNGHashAlgorithm」=「SHA1」

"AlternateSignatureAlgorithm" = dword:00000001

"MachineKeyset" = dword:00000001



すべての証明書を再発行します。



そして最後に、3番目のポイントは、ASAでのSSLパラメーターの設定、つまりTLS V1とrespに関連していました。 暗号(バージョンとアルゴリズム)。 PKIインフラストラクチャの展開時に、 asa911-smp-k8ファームウェアをインストールしたため、正常に構成できませんでした。 彼らはasa941-smp-k8にアップグレードすることを決めましたが、ここでも設定の更新手順を注意深く読みませんでした。 ここにそのような奇妙なエラーがありました:



画像



-これは、ファームウェアファイルを鉄片にダウンロードしようとしたときです。 ただし、最初にファームウェアバージョンasa912-smp-k8をインストールするだけで済みました。



この知識と経験が誰かに役立つことを願っています。 頑張って



コメントで正しく指摘されているPS-私は二要素認証を完全に忘れ、証明書について書き、 Active Directoryを忘れました。 ASDMを使用して設定プロセスを開始するために、修正を試みます。

画像

設定->デバイス管理->ユーザー/ AAA-> AAAサーバーグループに移動して、新しいグループ(名前とプロトコル)を作成します。 LDAPプロトコルの設定を写真に表示し、構成とRADIUSにも表示します(だれがより便利に使用できますか)。 次に、作成したグループにサーバーを追加します。

1. DNS名またはIPサーバーを指定します。 Microsoftサーバーの種類

2.ベースDN-例では、 DC =ドメイン、DC = ruとする

3. ADオブジェクトから生成されるユーザー属性-sAMAccountName

4. ADのオブジェクトを参照または検索するアクセス権を持つユーザーの識別名(属性エディターで追加コンポーネントの表示を有効にすることで、「Active Directory-ユーザーとコンピューター」コンソールから取得できます)

5.グループを検索するOUへのパス

項目LDAP属性マップに注意してください-構成する必要がある重要な詳細!

画像

ldap属性マップAD

マップ名memberOf IETF-Radius-Class


そして最後に、CAをすでに構成している場合、必要なすべての証明書がインストールされ、AAAサーバーへの接続が確認され、AnyConnect \ WebVPNが構成され、2要素認証を有効にできます。

画像



構成の約束された部分
ASAバージョン9.4(1)



ドメイン名domain.ru



ldap属性マップAD

マップ名memberOf IETF-Radius-Class

aaa-server domain.RUプロトコルldap

aaa-server domain.RU(VLAN100)ホスト10.0.0.101

ldap-base-dn DC =ドメイン、DC = ru

ldap-group-base-dn OU = GROUPS、OU = domainNOLOGIES、DC =ドメイン、DC = en

ldap-scopeサブツリー

ldap-naming-attribute sAMAccountName

ldap-login-password *****

ldap-login-dn CN = s-connect_asa-LDAP、OU = system_accounts、OU = BRANCH、DC =ドメイン、DC = en

サーバータイプマイクロソフト

ldap-attribute-map AD

aaa-server domain_NPSプロトコル半径

aaa-server domain_NPS(VLAN100)ホスト10.0.0.101

キー*****

ユーザーIDを有効にしない

ユーザーIDドメインドメインAAAサーバードメイン。RU

ユーザーIDデフォルトドメインドメイン

ユーザーIDアクションドメインコントローラーダウンドメインdisable-user-identity-rule

aaa認証はコンソールdomain_NPS LOCALを有効にします

aaa認証httpコンソールdomain_NPS LOCAL

aaa認証シリアルコンソールローカル

AAA認証sshコンソールdomain_NPS LOCAL

aaa認証telnetコンソールローカル

aaa許可コマンドLOCAL

aaa authorization exec authentication-server auto-enable





webvpn

ISP1を有効にする

anyconnect image disk0:/AnyConnect/anyconnect-linux-3.1.07021-k9.pkg 1正規表現「Linux」

anyconnect image disk0:/AnyConnect/anyconnect-linux-64-4.1.00028-k9.pkg 2正規表現「Linux」

anyconnect image disk0:/AnyConnect/anyconnect-macosx-i386-4.1.00028-k9.pkg 3正規表現「In​​tel Mac OS X」

anyconnect image disk0:/AnyConnect/anyconnect-win-4.1.00028-k9.pkg 4正規表現「Windows NT」

anyconnectプロファイルdomain_AnyVPN disk0:/domain_anyvpn.xml

anyconnectプロファイルdomain_VPN_Users disk0:/domain_vpn_users.xml

anyconnect enable

トンネルグループリストイネーブル

証明書グループマップDefaultCertificateMap 10 domain_AnyVPN

エラー回復無効化

グループポリシーDfltGrpPolicyの属性

デフォルトドメイン値domain.ru

グループポリシーGroupPolicy_domain_AnyVPN内部

グループポリシーGroupPolicy_domain_AnyVPN属性

wins-server none

dns-server値10.0.0.101

vpn-tunnel-protocol ikev2 ssl-client ssl-clientless

デフォルトドメイン値domain.ru

webvpn

anyconnect mtu 1406

anyconnect sslキープアライブ20

anyconnectプロファイル値domain_AnyVPNタイプのユーザー

always-on-vpnプロファイル設定

グループポリシーGroupPolicy_VPN_USERS内部

グループポリシーGroupPolicy_VPN_USERS属性

dns-server値10.0.0.101

vpn-tunnel-protocol ikev2 ssl-client

デフォルトドメイン値domain.ru

アドレスプール値VPN_Users

webvpn

anyconnectプロファイル値domain_VPNv_Usersタイプユーザー

カスタマイズ値DfltCustomization

トンネルグループdomain_AnyVPNタイプリモートアクセス

トンネルグループdomain_AnyVPN一般属性

アドレスプールVPN_Admins

認証サーバーグループdomain.RU

デフォルトグループポリシーGroupPolicy_domain_AnyVPN

トンネルグループdomain_AnyVPN webvpn-attributes

認証AAA証明書

radius-reject-message

group-alias domain_ADMINS enable

group-alias domain_AnyVPN disable

トンネルグループdomain_USERSタイプリモートアクセス

トンネルグループdomain_USERS一般属性

アドレスプールVPN_Users

認証サーバーグループdomain.RU

デフォルトグループポリシーGroupPolicy_VPN_USERS

トンネルグループdomain_USERS webvpn属性

group-alias Users_Access enable






All Articles