HPKP(HTTP公開キーのピン留め)があり、サーバーはクライアントのWebブラウザーに、アクセスするドメインに対して(将来的に)信頼する証明書を通知するために使用します。
GoogleのChromeおよびMozillaのFireFoxは、特定の証明書に固定されているWebサイトの独自のリストを提供します(Googleはこのリストのエントリを「ピンセット」と呼びます)。
他のドメインの証明書のピン留めをWebブラウザ(FireFoxなど)に追加するにはどうすればよいですか?
Webブラウザーで証明書の詳細を表示するときに「この証明書をこのURIに固定する」オプションがない理由はありますか? CAの概念を損なうのでしょうか、それとも単に実装されていないのでしょうか。
Googleで行うことができますChrome with chrome:// net-internals /#hsts:
その画面では、Webサイトのピン留め状態(HSTS、HPKP、およびプリロード済み)を確認できますが、任意のドメインの証明書ピン留めを追加することもできます:
Add domainセクションで、任意のドメインを指定できます。
Webブラウザーで証明書の詳細を表示するときに「この証明書をこのURIに固定する」オプションがない理由はありますか? CAの概念を損なうのでしょうか、それとも単に実装されていないのでしょうか。
はい、ユーザーが証明書をピン留めするのを困難にする理由が1つあります。Webマスターが証明書を更新する必要がある場合、ユーザーに通知する方法がありません。ブラウザーはキーが有効ではないことを通知しますが、それが正当かどうかを判断する方法はありません。
これを行うには、証明書をマッシュエクスポートしてから、次を実行します。
openssl x509 -in certificate.crt -pubkey -noout | openssl rsa -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64
(「certificate.crt」を以前に保存したファイルの名前に置き換えます)
YpcIku2YvZ9Q6rgTn8juPpBlEdzH7YFm9ZOLPImwwJk =のようになります。
次に、「公開キーフィンガープリント」フィールドにsha256/YpcIku2YvZ9Q6rgTn8juPpBlEdzH7YFm9ZOLPImwwJk =を入力します
(最初に追加されたsha256 /に注意してください)
ただし、複数のWebサイトで実行する場合は、Certificate Patrol for Firefox( )などのアドオンを使用することを強くお勧めします(https://addons.mozilla.org/fr/firefox/addon/certificate- patrol / )@WhiteWinterWolfが示唆したように。
HPKPはこのニーズに対応していません。
[〜#〜] hpkp [〜#〜] は、HTTPプロトコルの拡張機能であり、Webサイト管理者がブラウザに特定のピン情報を提供できるようにします。
HPKPが不適切に設定された場合、ブラウザはユーザーに直接頼むことなくWebサイトへのアクセスを拒否します。上記のすべての詳細は主に既知であり、最終ユーザーではなくサーバー管理者によって制御されるため、最終ユーザーはブラウザーでHPKPピンを正しく構成する方法がありません。
代わりに、ブラウザがHPKP以外のWebサイトによって提示された証明書に関するいくつかの情報を保存し、証明書の変更時にユーザーに通知して、新しい証明書を確認し、次の場合に続行することに同意できるようにする必要があります。すべてが整然としているようです。そのような機能は、少なくともFirefoxにはすでに存在しますが、 Certificate Patrol などのアドオンによって処理されます。
他のドメインの証明書のピン留めをWebブラウザ(FireFoxなど)に追加するにはどうすればよいですか?
FirefoxにはGUIがないと思います。 Chromeについては、トムの回答を参照してください。
Webブラウザーで証明書の詳細を表示するときに「この証明書をこのURIに固定する」オプションがない理由はありますか?
はい。キーのロールオーバーが必要なときは、地獄をサポートします。
CAの概念を損なうのでしょうか、それとも単に実装されていないのでしょうか。
両方とも。そしてそれは意図的なものです。上記を参照。