各ユーザーに配布したクライアント証明書を失効させることで、クライアント証明書認証が成功しないように制御することができます。
例えば、「過って紛失してしまった」クライアントPCを接続できないようにしたい場合、クライアント証明書を失効させることで接続できなくすることができます。
その方法の一つとして、OCSP (Online Certificate Status Protocol) の利用があります。
OCSPは、CRLと異なり、クライアント証明書認証が発生したタイミングで、そのクライアント証明書が失効していないかを確認する方式です。
(一度OCSPで証明書の失効有無が確認されると、PA Firewallは一定時間キャッシュしますので、認証の都度確認する、というものではありません。)
ここでは、PA FirewallがOCSPレスポンダからクライアント証明書が失効しているかどうかの状態を取得して、失効していれば、そのクライアント証明書の認証を成功させないように設定します。
OCSPの動作を確認するには、OCSPレスポンダが必要です。
MicrosoftのADCSの役割の一つである「Online Responder」がOCSPレスポンダの機能を持っているので、以下の設定はそれを利用することを前提とします。
Online Responder (=OCSPレスポンダ) の設定については、こちらをご参照ください。
証明書プロファイルのOCSP設定
PA Firewallの証明書プロファイルを設定変更して、OCSPによる失効管理ができるようにします。
「Device」タブ→ 「証明書の管理」の下の「証明書プロファイル」で表示された、設定済みの「WIN2019-CA-Profile」をクリックします。
a)「CRLの使用」のチェックを外し、「OCSPの使用」にチェックを入れます。
(CRLよりもOCSPが優先されるので、「CRLの使用」にチェックが入ったままでもよいのですが、OCSPが動作していることをはっきりと確認するため、ここでは「CRLの使用」は無効にしておきます。)
b)「WIN2019_SCEP」をクリックします。
c)「デフォルトOSCP URL」に「http://ec2amaz-ejgc4h8.acme.com/ocsp」と入力し、d)「OK」をクリックします。
「コミット」を実施します。
GP Agentからのアクセス
失効していないクライアント証明書で接続
クライアントPC が、有効な (=失効していない) クライアント証明書を持っていれば、現時点では接続できます。
OCSPの状態確認
OCSPで取得したクライアント証明書の状態はCLIで確認します。
クライアント証明書認証が成功すると、以下のようにStatusがValidとなります。
admin@PA-VM> debug sslmgr view ocsp all
Current time is: Wed Mar 16 05:43:08 2022
Count Serial Number (HEX) Status Next Update Revocation Time Reason
Issuer Name Hash
OCSP Responder URL
——- —————————————- ———– ———————— ———————— ———-
[ 1] 690000000F2B03AC70CC6D267500000000000F valid Mar 17 14:12:00 2022 GMT
687f7049
http://ec2amaz-ejgc4h8.acme.com/ocsp
クライアント証明書の失効
クライアント証明書を失効させます。
方法についてはこちらをご参照ください。
OCSPキャッシュの消去
OCSPを利用したクライアント証明書認証が一旦成功すると、PA Firewallはその結果をしばらくキャッシュしますので、上記の失効処理を行っただけでは、正しく接続できてしまいます。
よって、OCSPで得たクライアント証明書の状態を一旦削除する必要があります。
OCSPキャッシュを消去するには、以下2つのコマンドを実行する必要があります。
admin-admin@Azure-PA-VM> debug sslmgr delete ocsp all
admin-admin@Azure-PA-VM> debug dataplane reset ssl-decrypt certificate-cache
Online Responderのキャッシュが最短でも5分なので、サーバー上でクライアント証明書を失効してから最低5分は待つ必要があります。
失効したクライアント証明書で接続
失効させたクライアント証明書を持つクライアントPCから接続を試みると、接続が失敗します。
OCSPの状態確認
再度、CLIコマンドで状態を確認します。
今度はStatusがRevoked になります。
admin@PA-VM> debug sslmgr view ocsp all
Current time is: Wed Mar 16 05:46:35 2022
Count Serial Number (HEX) Status Next Update Revocation Time Reason
Issuer Name Hash
OCSP Responder URL
——- —————————————- ———– ———————— ———————— ———-
[ 1] 690000000F2B03AC70CC6D267500000000000F revoked Mar 17 16:31:07 2022 GMT Mar 16 05:37:00 2022 GMT
687f7049
http://ec2amaz-ejgc4h8.acme.com/ocsp
コメント欄 質問や感想、追加してほしい記事のリクエストをお待ちしてます!