web-dev-qa-db-ja.com

サーバーからIKEv2サーバー証明書を取得するのはどれくらい難しいですか?

IPsecとIKEv2経由でVPNにアクセスしました。プロバイダーからユーザー名、共有シークレット、サーバー証明書が提供されました。証明書は自己署名されていたため、マニュアルにはインストール方法に関する特定の指示が付属しています。

マニュアルには、インポート後に証明書ファイルを削除する必要があると記載されています(他のユーザーがインポートできないようにするため)。ファイルは公開鍵なので、奇妙に思えました。そのため、サーバーの整合性を検証するためにのみ使用されます。だから、私は証明書を持たずにサーバーに接続するにはどうすればよいですか?

WindowsとmacOSのどちらでもサーバー証明書の検証を無効にするオプションが見つからなかったので、証明書をダウンロードしてインポートするのはどれほど難しいですか?

HTTPS/SSLの場合、SSLは最初にサーバーを検証し、後で暗号化するため、このようなファイルはすべての接続に対してプレーンテキストでネットワーク経由で送信されます。 IKEv2は、最初にDH-Key Exchangeを使用して暗号化されたチャネルを開き、次にサーバー証明書を検証します。証明書ファイルは送信前に暗号化されるため、Wiresharkから取得することはできません。

グーグル検索では結果が出なかったので、私の質問は次のとおりです。

  • IKEv2経由で証明書をダウンロードするのはどれくらい難しいですか?
  • そのためのツールがすでに存在する場合、そのリファレンスを投稿できますか?
  • すぐに使えるツールがない場合、プログラマーはどれくらいの期間、ツールを書く必要がありますか?1

1:ツールは完全である必要はありません。特定のサーバーから証明書をダウンロードするだけです。想像上のプログラマーは数年の経験がありますが、VPNに関するものは何も書いていません。

1
rollstuhlfahrer
  • IKEv2経由で証明書をダウンロードするのはどれくらい難しいですか?

これは、サーバーの構成とクライアント認証のタイプによって異なります。

クライアントにサーバー証明書がインストールされていて信頼している場合、サーバーは技術的に証明書を送信する必要はありません。クライアントは、サーバーのIKE IDと一致するローカル証明書を使用して、AUTHペイロードの署名を検証します。

サーバーが証明書を省略するように構成されていない場合、特定の認証方法は攻撃者が証明書を取得するのを防ぎます。証明書と事前共有キー認証の両方で、クライアントが最初に認証されます。サーバーは、クライアント認証が成功しなかった場合、AUTHENTICATION_FAILEDエラー通知で応答します。

EAP認証(例:EAP-MSCHAPv2を介したユーザー名/パスワード、またはEAP-TLSを介した証明書)の場合のみ、サーバーはクライアントの前に認証されます(クライアントはIKE_AUTHリクエストでAUTHまたはCERTペイロードを送信しませんが、サーバーは両方を送信しますその最初の応答で)。

  • そのためのツールがすでに存在する場合、そのリファレンスを投稿できますか?
  • すぐに使えるツールがない場合、プログラマーはどれくらいの期間、ツールを書く必要がありますか?

この特定の使用例のためのツールを知りません。しかし、例えばstrongSwanの charon-cmd コマンドラインIKEクライアントをログレベルを上げて使用すると、サーバー証明書をダンプできます。もう1つのオプションは、IKEキーを取得し(ログまたはsave-keysプラグインを使用)、Wiresharkを使用してIKE_AUTH応答を復号化し、証明書を抽出することですそこ。

1
ecdsa