2017-06-25 10 views
0

ルートCA(CA-R)と2つの中間CA(CA-I1 & CAI2)(すべて自己署名)を作成しました。中間ルート権限のクロスチェーン検証

CA-I1を使用して、server1/client1の秘密鍵を生成し、CSR &が証明書を作成しました。 Server1(Apache2)とclient1.Imの証明書をインストールしました。クライアント1(pythonクライアント)を使用してserver1に正常に接続できました。

Here is the chain -> client1->server1->CA-I1->root CA 

CA-I2を使用して、私はSERVER2/CLIENT2のための秘密鍵を生成し、CSR &は本命を作成しました。 Server2(Apache2)とclient2の証明書をインストールしました。私のclient2(pythonクライアント)を使ってserver2に正常に接続できました。今

Here is the chain -> client2->server2->CA-I2->root CA. 

IはCA-I1(両方CA-I1 & CA-I2が同じルートCAからのもののような)はPythonの一部の本命を添加することにより、サーバ1に接続することができ、私はCLIENT2を使用してかどうかを知りたいですクライアント。 基本的に私はクロスチェーン認証ができるかどうかを知りたい。ここで

+0

サーバーフォールトと[X.509とPGPのような世界の相互認証?](https://serverfault.com/q/374343/145545)の[OpenSSLでCAにカウンターサインする] //security.stackexchange.com/q/91392/29925)をInfoSec.SEに追加してください。 – jww

答えて

1

鎖である - > client1-> server1-> CA-I1->ルートは、私はあなたの質問は、その過ぎず示唆するようにサーバー証明書とクライアント証明書に署名していない願っていますCA

CA証明書(CA-I1、CA-I2)でクライアント証明書に署名しました。そうしないと、サーバー証明書がサーバー認証用のリーフ証明書とクライアント証明書に署名するCA証明書の両方として使用される場合にのみ、これが機能します。これらの異なる種類のユースケースは、単一の証明書に統合されないほうがよいでしょう。したがって、あなたが実際に使用すべきことは次のとおりです。

server1 -> CA-I1 -> root-CA 
    client1 -> CA-I1 -> root-CA 
    server2 -> CA-I2 -> root-CA 
    client2 -> CA-I2 -> root-CA 
クライアント2を使用して、私は両方のCA-I1 & CA-I2として(CA-I1の本命を追加することによって、サーバー1に接続できるかどう

...同じですルートCA)

各クライアントとサーバーは複数のCAを信頼でき、クライアントとサーバーの証明書の検証に使用される証明書は実際には異なる場合があります。しかし、server1がクライアント認証のためにroot-CAによって署名された証明書を信頼することを考慮すると、クライアントは信頼証跡をroot-CAに構築するために必要なすべての中間証明書をクライアントがリーフ証明書とともに送信する限り、client1とclient2の両方を信頼します。これはサーバー認証とは異なりません。

+0

Thanks @ Steffen..あなたが言及したように働いています。「server1は他の仲介業者と証明書を信頼しない」ということを制限する方法はありますか? – user1050619

+0

@ user1050619:[SSLRequire](https://httpd.apache.org/docs/2.4/mod/mod_ssl.html#sslrequire)または[Require](https://httpd.apache.org/docs/ 2.4/mod/mod_authz_core.html#reqexpr)をSSL_CLIENT_I_ * [環境変数](https://httpd.apache.org/docs/2.4/mod/mod_ssl.html#envvars)とともに証明書の発行者を制限します特定のものに –

+0

OK、ありがとうございます。私の理解が正しいかどうかは確かではありませんが、仲介者CA(CA1)の下のユーザー(U1)が中間CAの下で別のサーバー(S2) CA2)は両方とも同じルートCAの下にあるためです。私はそれが複数の部門を持つ大企業でどのように機能するのか想像しています。誰もが別のルートCAを持つべきですか? – user1050619

関連する問題