2016-04-26 5 views
1

ssl.confファイルで 'SSLVerifyClient'を 'require'として設定したLinuxマシン上でWebサーバーを実行しています。クライアントが証明書に合格しない場合のhttps接続の安全性

ウェブブラウザ(firefoxやchromeのような)からサービスを利用しているクライアントには証明書が必要ですか?

「はい」の場合は、何千人ものユーザーがいる可能性があるため、この問題を解決する方法として、すべてのユーザーにクライアント証明書を配布することはできません。

いいえの場合、ネットワーク経由でデータがどのように安全に転送されますか?私はその証明書がデータを暗号化するのに役立つので、誰も証明書を持っていない人がデータを読むことができないことを知っています。

でSSLVerifyClientを要求するように設定されている場合は

+0

'証明書がデータを暗号化するのに役立つので、証明書を持たない者はデータを読み取れません。'これは正しくありません。 – EJP

+0

私はSSLについて長文を読んで、もう一度理解してみましょう。ありがとうございました.... –

+0

[デジタル証明書がSSLの上に余分なセキュリティを提供する方法]の複製があります(http:// stackoverflow。 com/questions/23446495/how-digital-certificates-provide-top-of-ssl) – EJP

答えて

0

あなたがクライアント証明書を使用しない場合は、https接続がまだ安全である:

  • のみ、クライアントとサーバが読むことができる/書き込み内容
  • サーバーの身元が保証されていることにより、認証局

クライアント証明書は、接続の最初にクライアント認証を与えます。データを暗号化するには、最初にサーバーの公開キーを使用します(公開キーの暗号化を参照)。

ログイン/パスワードの送信後にクッキーを設定してクライアントを識別した場合でも、依然としてクライアントは識別されています。

+0

クライアント証明書がなくても、他の人がデータを正しく読み取ることができます。私によると、クライアント証明書はサーバーに送信する前にデータを暗号化します。クライアント証明書がない場合、どのように暗号化が行われるか。 SSLVerifyClientをFalseに変更する必要があります。クライアントが証明書を送信することを期待していない場合です。あなたの助けをありがとう –

+1

@RajeshKumar彼はすべてに答えました。 「私に従って」始まる部分は間違っています。 – EJP

+1

@RajeshKumarクライアント証明書はクライアント認証のみを提供します。 Cerver。クライアントは、サーバーの公開鍵を使用してデータを暗号化します。 – Tom

-1

、クライアントはクライアント証明書を渡す必要があります私の疑問を明確に私を助けてください。これらはOpenSSL経由で生成し、SSLCACertificateFile経由でインストールする認証局で署名します。

これらの証明書を配布する方法は、あなた自身で解決しなければならない問題です。

関連する問題