キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
4572
閲覧回数
5
いいね!
8
返信

証明書のフィルタリング設定(Mapping Criteria)について

parlerinfo193
Level 1
Level 1

お世話になっております。

 

現在、クライアント認証を実現するために、

ルート証明書に対して、フィルタリング設定(Profile Mapping)を行い、

認証局は同じでも、こちらで許可した特定の証明書からのみ接続可能となるような措置をしたいと考えています。

 

利用機器は"ASA5545"で、

マニュアルなどを読んだ結果、以下の個所を設定する事で出来そうであると理解しました。

 

「Configuration」メニューの「Remote Access VPN」→

「Network (Client) Access」→「Advanced」→「IPSec」→「Certificate to Connection Profile Maps」→「Rules」

 

しかし、こちらでOU(Organization Unit)やO(Organization)の値を

配布した証明書の値と異なる文字列にしたにも関わらず、

きちんと接続できてしまっており、フィルタリングによる制御が上手く実現できていません。

 

ただ、他に設定するべき場所があるようにも見受けられず、

何かが足りないのか、見当違いの設定をしているのかも分かっておりません。

 

少し抽象的な質問となり恐縮ですが、

調べる手がかりでも構いませんので、何かご存知の方がいらっしゃれば、御教示頂きたいと思っております。

 

足りていない情報があれば、出来る限り展開させて頂きますので、

合わせてご指摘くださいませ。

 

以上、どうぞ宜しくお願い致します。

8件の返信8

Akira Muranaka
Level 8
Level 8

こんばんわ!

確か「mapping Criteria」利用時は、「group alias」機能(ログインページのトンネルグループドロップダウンリスト表示)と競合したと思いますので、「group-alias」無効化してみると如何でしょう?

[ASA 8.x:group-alias メソッドおよび group-url メソッドにより WebVPN ログイン時にユーザがグループを選択できるようにする]
http://www.cisco.com/cisco/web/support/JP/100/1005/1005574_enable-group-dropdown.html

[ASA SSL VPN Tunnel Group Group-URL and Group-Alias selection methods]
https://supportforums.cisco.com/document/6096/asa-ssl-vpn-tunnel-group-group-url-and-group-alias-selection-methods


また、以下情報などを参考にし、まずは 接続試験時のASAのログを確認・調査すると如何でしょうか。 正常に Certificate Mappingが動作しているかのログ確認には、デバッグレベルのシスログ 71703xや、デバッグ「debug crypto ca 4」 が利用できます。logging buffered debug 等を有効化にし、情報収集してから、show logで、AnyConnect接続時のASA処理状況を確認頂くと、状況がより分かり易いかと思います。


[ASA Configuration for Double Authentication and Certificate Mapping]
http://www.cisco.com/c/en/us/support/docs/security/anyconnect-secure-mobility-client/116111-11611-config-double-authen-00.html#anc16

[Configuring CA Certificate Map Rules ]
http://www.cisco.com/c/en/us/td/docs/security/asa/asa80/configuration/guide/conf_gd/cert_cfg.html#wp1046987

[Certificate Mapping for Tunnel Groups on a Cisco ASA]
http://www.runtrocks.com/certificate-mapping-for-tunnel-groups-on-a-cisco-asa/


デバッグコマンド「debug crypto ca 4」を用いた調査時は、以下なども参考にしてみてください。

[ASA: debug-traceを活用したトラブルシューティング]
https://supportforums.cisco.com/ja/document/12271691


うまく行かない場合は、VPN設定の一部や、上記接続試験時のシスログ・デバッグログ、ご利用のバージョンも、添付頂く事は可能でしょうか?

無事つながるのを祈ってます :-)

Muranakaさん

 

素早い返信をありがとうございました!

回答が遅れてしまい、申し訳ございません。

 

教えて頂いたサイトなどを参考にしながら、設定を変えてみたりしたのですが、

私の期待した動きにさせることが出来ませんでした。

 

ログを確認してみた結果、mappingでfailedになっているようで、

mappingは合致していないと判断しているようですが、VPNは上手く接続が出来てしまっています。。

おおむねログは以下の通りです

-------

Sep 10 2014 09:40:13: %ASA-4-717037: Tunnel group search using certificate maps failed for peer certificate: serial number: 6xDx95Ax9325046DC013Bx393765E381, subject name: ea=nxzxcxzcz@general.ca,cn=nxzxcxzcz,ou=IssuedCount - 4,ou=DeviceID - F2NKP7YQF8H2,ou=DeviceType - iPhone,ou=Information Systems,o=Information Count,c=JP, issuer_name: cn=Local Com Device Solution Service CA,o=Local Country hug.,c=JP.
-------

教えて頂いたサイトですと、以下に記載されたログが類似な気がします。

[Certificate Mapping for Tunnel Groups on a Cisco ASA]
http://www.runtrocks.com/certificate-mapping-for-tunnel-groups-on-a-cisco-asa/

 

Mappingの値とは異なる為、期待としては、VPNの接続に失敗してほしいのですが、

きちんと接続できてしまいます。

 

また、機器やASDMのバージョン、デバイス証明書の記載内容などを添付します。

-----------

profile_mappings.jpg ・・・ ASDMのProfileMaps画面の内容

・ device_certification.jpg   ・・・ 利用しているデバイス証明書の内容

spec.jpg ・・・ 危機のスペック(バージョン、機器の型番など)

-----------

 

 何か見当違いの事をしているかもしれませんので、

また何か、指摘がございましたら、ご教示いただければ、幸いです。

 

どうぞよろしくお願いいたします。

 

こんばんわ! ご返信ありがとうございます!

おそらく、「Tunnel group search using certificate maps」が失敗したログメッセージの後に、いくつか認証プロセスを経由した後、最終的に「VPN認証が成功した!」というログメッセージが出てくると思います。そのVPN認証成功メッセージの前後に、どのプロセス(機能)により最終的にVPN認証が成功したか出力がありませんでしょうか?

可能でしたら、AnyConnect接続開始 ~ AnyConnect接続完了までの、デバッグ出力を含む ログメッセージを、IPアドレス等の内緒情報を適当な情報に変えていただいた上で、掲示板に添付いただけますと助かります。僕のほうでも調べてみます。:-)

(あと、できれば、ASAのshow runの一部もあると最高です・・・。)

また、利用のASAバージョン 8.6は、現在殆ど開発がされておらず、来年開発が終了する、いくらか古めのバージョンです。。後継リリースは全てASA9.xに移行されます。ASA8.6系とASA9.0系はあまり大きな違いはなかったはずです。逆に、ASA8.6から、ASA9.1やASA9.2などにアップグレードした場合は、違いがそれなりにあったはずです。

その為、ASA本体バージョンを、ASA 9.0(4)や 9.0(4)20にアップグレード、ついでにASDMバージョンも7.x系の最新版にされると、(仮に既知不具合だった場合は)もしかしたら良いことがあるかもしれません。。。困ったときのお手軽切り分け方法です。

ASAバージョン8.6 開発終了情報:
http://www.cisco.com/c/en/us/products/collateral/routers/800-series-routers/eol_C51-730372.html

ASDM 6.x を使用したソフトウェア イメージのアップグレード:
http://www.cisco.com/cisco/web/support/JP/102/1021/1021172_upgrade-pix-asa7x-asdm-j.html#asdm6.x1

なお、ASAをバージョンアップする前に、ASDMのメニューから「Tools」>「Backup Configurations」をお忘れずに・・・!

Muranakaさん

ご回答をありがとうございました!

なるほど、すでにASAの8.6は、ほとんど開発されていないのですね。。

貴重な情報をありがとうございました!

バージョンアップも含め、検討をしたいと思います。

 

頂戴した情報を元に、私の方でも色々と調べてみました。

見当違いの部分でないと思われる

show runの情報や接続に関するログも添付してみましたが、如何でしょうか?

 

間違えていたら申し訳ないのですが、以下、私見です。

 

現在、私は、

「Connection Profiles」の"Mapping_test"をmappingして、証明書のフィルタリングをしようとしています。

#「Certificate to AnyConnect and Clientless SSL VPN Connection Profile Maps」にて、"Map1"という名前で設定

確かにそこではNGとなって終わっているようなのですが、

そのまま続けて、同じ「Mapping_test」をIPV6でつなぎに行き、そこで普通に繋げられてしまっているような、、

 

また、調べていると、「tunnel-group-preference group-url」を無効にすると、

この現象が改善される、というような意見もあったのですが、その方法が分かりませんでした・・

 

[添付ファイル]

a_part_of_show_run.txt  :show runからの抜粋情報です。

connection_start-fin.txt :接続開始から完了までのログ情報です。

 

ご協力ありがとうございます。

情報が不足しているようであれば、ご指摘ください。

どうぞ宜しくお願い致します。

 

 

 

 

 

 

parlerinfo193さん、こんにちわ!
詳しい情報と、考察有難う御座います! とても参考になります。

はい、バージョンアップは、どこかメンテナンスタイミングで是非 実施を検討頂くと、長期的にメリットが"大"だと思います。これまでの経験上、最新のOpenSSLの脆弱性対応も含まれる、9.0(4)23や9.1(5)12あたりがオススメです。ASAの各バージョン毎でサポートされた新機能一覧は以下で確認できます。

[Cisco ASA New Features by Release]
http://www.cisco.com/c/en/us/td/docs/security/asa/roadmap/asa_new_features.html

以下は、ASAバージョンと、ASDMバージョンの互換性情報です。是非ASDMのバージョンアップも検討下さい!

[Cisco ASA Compatibility]
http://www.cisco.com/c/en/us/td/docs/security/asa/compatibility/asamatrx.html


「tunnel-group-preference group-url」の無効化は、CLIの以下を、"no tunnel-group-preference group-url"で消してあげるのはいかがでしょう。
--------------------------------------------------------
webvpn
 enable outside
 anyconnect-essentials
 anyconnect image disk0:/anyconnect-win-2.5.2014-k9.pkg 1
 anyconnect enable
 tunnel-group-list enable
 tunnel-group-preference group-url   ←★
 certificate-group-map Map1 10 Mapping_test  
--------------------------------------------------------

なお、「tunnel-group-preference group-url」のOFF/ONはASDM 7.xからも可能のようです。例えば、僕のASDM 7.2だと、Configuration > Remote Access VPN > Network (Client) Access > AnyConnect Connection Profiles 画面下部の"Let group URL take precedence..."から変更可能です。


本題ですが、本件のそもそもの原因は、最終的に"Mapping_test"にマッチしてしまう事ですよね。。。「Certificate Mapping」は、一致するルールが無いと、通常のコネクションプロファイルのマッチング処理に移行してしまいます・・・これはこれで、正しい(期待された)動作とも言えるのですが・・。

考えられる対応として、以下は如何でしょうか。

1. 期待しない証明書で、「Mapping_Test」で認証が成功しないよう変更する(※これが一番シンプル)

2. (試したことが無いのですが)  Mapping Criteriaで、「Does Not Equal」が選択できます。プライオリティを一番下にしたエントリを作成し、指定のCN名にマッチしない(=Does Not Equal)場合は、社内にアクセスできないようなコネクションプロファイルに割り当てる案も利用可能だと思います。 例えば以下は、cisco以外のCNの証明書は全て、DENY-CONに割当てる設定をASDMで実施した後の、CLIの抜粋です。
--------------------------------------------------------
      crypto ca certificate map NO-MATCH 65535
        subject-name attr cn ne cisco     <----- CN "cisco" 以外をマッチ
      tunnel-group-map NO-MATCH 65535 DENY-CON   <---- DENY-CONを割当て

      tunnel-group DENY-CON general-attributes
        default-group-policy NO-LOGIN

      group-policy NO-LOGIN attributes
        vpn-simultaneous-logins 0    <----グループポリシで接続数を0にする
--------------------------------------------------------


AnyConnectのConnection Profileの処理順序については、以下が大変参考になりますので、合わせてご確認下さい。

[ASA - Connction profile (tunnel group) の選定方法について]
https://supportforums.cisco.com/ja/document/12260326


ちょっと僕のほうでも、時間を見つけて、上記は検証してみようと思います。

検討の一助になれば幸いです laugh

Muranakaさん

丁寧なご説明を、本当にありがとうございます!

バージョンアップについても、色々御教示いただき、大変参考になっております。

 

「tunnel-group-preference group-url」の無効化は、教えて頂いたやり方で無事に出来ました!

が、この設定をしても、結局、期待した動作にはならず、VPNは接続できてしまいました・・・

 

AnyConnectのConnection Profileの処理順序についての資料もありがとうございます。

お陰様で、ようやく処理の動きが少し理解できて来た気がします。

 

頂いたアイデアについても、確認しながら、試してみます。

試してみた結果については、また、投稿させて頂きます。

 

まずは、お知らせの一報とお礼まで。

 

Muranakaさん

皆様

 

遅くなりましたが、最終的に目的の動作を実現できたので、お知らせします。

 

Muranakaさんから頂いた情報やアイデアが非常に参考なりました。

ありがとうございます。

 

詳細は、添付資料をご覧いただければ、と思うのですが、概要は以下の通りです。

 

SSL-VPNの接続では、Mapで一致しないと、指定されたConnecition Profileを見に行ってしまう仕様の為、

接続要求をするConnecition ProfileのSSL-VPNをdisalbledにする事で、結果、接続拒否されました。

Mapで一致すれば、無事にVPN接続は出来る為、

今回は、そのような対応とする事にしました。

 

以上、お礼とご報告になります。

parlerinfo193さん

無事意図した接続になったとの事で、おめでとうございます!
Map不一致で、Connection ProfileをSSL-VPN接続不可にする方法は、シンプルで良い方法ですね!

詳しい資料の添付まで頂きありがとうございます。似た要件があった場合に参考にさせて頂きます!