web-dev-qa-db-ja.com

自己署名証明書がインターネット経由で機能しないのですか?

自己署名証明書がインターネットで機能しません。問題は何ですか?

セットアップの詳細は次のとおりです。

  1. IISを備えたAzureのWindows仮想マシンと、HTTPS用の自己署名証明書があります。物事はうまく機能しています。サイトは問題なくオープンしています。注:インターネット経由でこの情報にアクセスできるように、ドメインもセットアップしています。

  2. 個人のラップトップからHTTPSベースのWebサイトにアクセスしようとすると、エラーメッセージThis connection is not trustedが表示されます。

ブラウザで上記のエラーが発生した場合、保護されていないモードでサイトを閲覧する設定を受け入れる必要があります。そうしないと、データにアクセスできません。しかし、これは私が望むものではありません。

セキュアモードでのみデータにアクセスしたい。

自己署名証明書を使用してこれをどのように行うことができますか?

6
Vipin Tanwar

考えられる解決策の1つは、ノートブックに信頼されたルートCAとして自己署名証明書をインストールすることです。

参照 https://technet.Microsoft.com/en-us/library/cc754841.aspx#BKMK_addlocal

これにより、説明している問題が修正されます(ラップトップのみ、およびOSが信頼するルートを使用するブラウザー/その他のソフトウェアのみ、つまりFirefoxは引き続き警告を表示し、bcsは独自の信頼されたルートCAを使用します)。

ただし、これは本番環境では機能しません。すべてのビジターは、ブラウザの警告を回避するために、自己署名証明書を信頼されたルートCAとして追加する必要があります。そうすることは、深刻なセキュリティリスクになります。

2
bayo

接続が信頼されていないというメッセージが表示されても、HTTPS接続ではないという意味ではありません

このようなエラーメッセージを表示するかどうかを判断するために、ブラウザは次の基準を使用して証明書を検証しようとします。

  • 証明書の共通名は、URLバーに入力したドメイン名と一致していますか?
  • 現在の日付は、有効開始日と有効終了日の間ですか?
  • 証明書は、よく知られた認証局(CA)によって署名されていますか? (これは、自己署名証明書にはないものです)
  • 証明書は取り消されていますか? (私はすべてのブラウザがこの点を検証するかどうかわかりません)

他のメカニズムもありますが、とりあえず忘れましょう。

あなたの場合、このエラーメッセージを回避したい場合(これはHTTPSでWebサイトを閲覧しないことを意味するものではありません)、次のことができます。

  • Firefoxでの選択を思い出してください(警告は表示されません)。
  • 独自のCAで証明書に署名し、WindowsおよびFirefoxで信頼できるものとしてCAをインストールします(かなり良い記事 here がありますが、SHA2の代わりにSHA1署名を使用しているため、最新ではありません)
  • 有名なCAによって署名された有効な証明書を取得します( StartSSL たとえば無料です)
18
Jyo de Lys

表示されるエラーメッセージは、自己署名証明書を処理するときのブラウザの通常の動作です。自己署名証明書はデータの受信者(サーバー)が実際には誰であるか(信頼)できないため、次のメッセージが表示されます。あなたはあなたがあなたのウェブサイトを信頼していると確信しています(サーバー)。いずれにせよ、攻撃者が自己署名証明書を作成して中間者攻撃を開始できるという事実を踏まえると、ブラウザは(正しい/実際の)サーバーに接続していることを確認できないためです。

問題を解決するには、Webサイトへのアクセスに使用しているブラウザーに応じて、接続ルールの例外を追加します。

12
user45139

HttpsはTLS/SSLを介したhttpです。 TLSは次の3つを提供します。

  1. データ暗号化
  2. サーバー認証(サーバーとは、彼らが言うとおりのサーバーです)
  3. クライアント認証(クライアントとは、彼らが言うとおりの人物です)

1)自己署名証明書で十分ですが、2)クライアント(ブラウザ)が認識している認証局によって署名された証明書が必要です。残念ながら、現在のすべてのブラウザーは常にhttpsに対して1)2)の両方を必要とするため、自己署名証明書を受け入れません(少なくとも恐ろしい警告がない限り)。多くの状況では1)で十分かもしれませんが、ページを表示するためにユーザーにフープをジャンプさせます。

サイトにアクセスできるのが自分または管理下の小さなグループのみである場合は、すべてのブラウザに信頼できるルート証明書として自己署名証明書をインストールできます。基本的に、あなたはあなた自身の認証局になります。

見知らぬ人がこのサイトにアクセスする場合は、有名な認証局によって署名された証明書を入手するしかありません。幸いなことに StartSSL のように、これを無料で行う認証局があります。

日和見暗号化 」への動きがあることに注意してください。これはこの問題を解決し、セルフを使用してhttpsを許可します署名された証明書。これがサポートされるのが当たり前になるまでにはしばらく時間がかかります。 Firefox それを実装 、しかしその後 無効化 セキュリティ問題のため。詳細に興味がある場合は Security Nowポッドキャストのエピソード502 も参照してください。

2
Pepijn Schmitz