web-dev-qa-db-ja.com

内部自己署名証明書のTortoiseHGでのHTTPSホスト認証の無効化

TortoiseHGで内部自己署名証明書のHTTPSホスト認証を無効にするにはどうすればよいですか。内部サーバーの場合、HTTPSは主に暗号化に使用されます。

TortoiseHGのドキュメントには、ホストの検証(つまり、認証局チェーンに対する検証)を無効にすることが可能であると記載されています ここ しかし、オプションが見つからないようです。

リモートリポジトリのクローンを作成するときのオプションになるはずです。最新のTortoiseHG2.0.5を使用しています

19
jbx

TortoiseHGワークベンチの[同期]タブ(または[同期]画面)で、リモートパスを選択している場合は、ロックアイコンが付いたボタンが表示されます。

enter image description here

これにより、[セキュリティ]ウィンドウが表示され、オプションNo Host validation, but still encryptedなどの設定を選択できます。これをオンにすると、Mercurial.iniに次のようなものが追加されます。

[insecurehosts]
bitbucket.org = 1

これはTortoiseHgのマシンレベルの設定ですが、クローンウィンドウには影響しないようです。

コマンドラインで、--insecureを使用して、証明書の検証をスキップできます。

hg clone --insecure https://hostname.org/user/repository repository-clone

これにより、証明書を検証しないことに関するいくつかの警告が表示され、以下の警告の例のように、各メッセージにホストフィンガープリントが表示されます(読みやすくするために元の形式からフォーマットされています)。

warning: bitbucket.org certificate with fingerprint 
 24:9c:45:8b:9c:aa:ba:55:4e:01:6d:58:ff:e4:28:7d:2a:14:ae:3b not verified
 (check hostfingerprints or web.cacerts config setting)

ただし、より適切なオプションは ホストフィンガープリント で、これはhgとTortoiseHgの両方で使用されます。 TortoiseHgのセキュリティウィンドウでは、No Host validationの上にオプションVerify with stored Host fingerprintがあります。 [クエリ]ボタンは、ホストの証明書のフィンガープリントを取得し、それをMercurial.iniに保存します。

[hostfingerprints]
bitbucket.org = 81:2b:08:90:dc:d3:71:ee:e0:7c:b4:75:ce:9b:6c:48:94:56:a1:fe

すでに証明書を信頼していることを宣言しているため、これは証明書の実際の検証をスキップする必要があります。

このドキュメント 証明書についても役立つ場合があります。

34
Joel B Fant

[リポジトリの複製]ウィンドウでオプションを展開し、[ホスト証明書を確認しない]チェックボックスをオンにします。

1
johnb