web-dev-qa-db-ja.com

クライアント証明書の共通名?サブジェクトの別名?

IoTプロジェクトでは、クライアントサーバー通信を保護したいと考えています。クライアントがデータを投稿する前に、サーバー(Apache)とクライアントの両方がお互いを識別/認証する(クライアントが他のクライアントと通信しない)必要があります。

クライアント証明書に関する情報ははるかに少ないです。ドキュメントの他に、ベストプラクティスがあります。クライアントにドメイン名と固定IPアドレスがないため、クライアントの共通名とサブジェクト代替名を設定する方法を知りたいのですが。

サーバーに不一致を無視するように指示するだけですか?ワイルドカードのみCN(CN = *)を使用できますか?また、特定のクライアントを識別するための証明書も必要です。サーバーはクライアント1とクライアント2を区別できる必要があります...

ありがとう!

6
Genom

クライアント証明書でサブジェクトとして使用されるものは、コンテキストによって異なります。人間を一般的に識別する必要がある場合は、メールアドレスまたは名前が使用されます。マシンを識別する必要がある場合は、通常、マシンのホスト名が使用されます。後者の場合、CN自体はサブジェクトのタイプ(つまり、DNS名、IPアドレス、URL ...)を表さないため、サブジェクトの代替名(およびおそらくCNも)を使用するのがおそらく最善です。

6
Steffen Ullrich