2016-06-23 10 views
0

複数のサーバーとロードバランサがあります。サーバーが最初に構成されると、自己署名証明書が作成されます。次に、サーバーは固定IPをロードバランサに登録します。CAから証明書を自動的にインストールするにはどうすればよいですか?

私たち自身のAndroidアプリがサーバにアクセスしたいとき、ロードバランサはそれにIPを知らせます。 SSLContextに独自の証明書をインストールすることで自分の証明書を信頼できるため、AndroidアプリはSSLを使用してサーバーと通信できます。

問題:私たちは、任意のブラウザでは、私たちのサーバーにアクセスできるようにシステムを拡張したいのですが、これらは私たちの自己署名証明書を信頼し、ユーザーに醜いメッセージが表示されません。

Ergo、信頼できるCAの証明書を使用する必要があります。しかし、ここではロードバランサがドメインではなくIP(変更可能)を使用するという問題があります。ドメインベースの証明書を使用する場合は、各サーバーに証明書を手動でインストールする必要があります。また、ドメインに対してDNSを構成する必要があります。

How are ssl certificates verified?は、認証時の手順を説明しますが、どのブラウザでは、IPそれ接点が与えられたドメインに属していることを私ははっきりと表示されていないが知っているんですか?それは逆のエントリーを見ますか?手動インストールやDNSの設定を回避するために、このシステムをどうにかしてトリックすることはできますか?また、私はドメインの証明書もIPに発行されると思っていたので、すべてのサーバーで再発行する必要がありました。誰でもドットを結ぶことができますか?現在行っているようにサーバーを自動的に構成するにはどうすればよいでしょうか?自己署名証明書ではなくCAからの証明書を使用するのは何ですか?誰かが私が使用できるAPIを持つCAを認識していますか?

答えて

0

ブラウザは、IPそれ接点が与えられたドメインに属していることを知っていますか?

それはしていません。一般的な名前の検証メカニズムは次のとおりです。証明書の名前はアドレスバーの名前と一致する必要があります。

クライアントがリモートサーバーに名前で接続する場合、応答の証明書にはSubjectフィールドまたはSubject Alternative Names証明書の拡張子にその名前が含まれている必要があります。

クライアントはIPによって、リモート・サーバに接続している場合は、応答内の証明書は、サブジェクトフィールドまたはサブジェクト代替名の拡張子で、いずれかのIPことが含まれている必要があります。

IPの問題は、商用(信頼できる)CAが証明書をIPアドレスに発行しないことです。修飾ドメイン名のみ。

+0

これは物事をはっきりさせる。ですから、おそらくワイルドカード証明書を取得する必要があるでしょうし、各ipsについてDNSにサブドメインを追加する必要があります。 –

関連する問題