【发布时间】:2011-06-09 13:01:15
【问题描述】:
如何在 TortoiseHG 中为内部自签名证书禁用 HTTPS 主机身份验证。对于内部服务器,HTTPS 主要用于加密。
TortoiseHG 文档说可以禁用主机验证(即针对证书颁发机构链的验证)here,但我似乎找不到该选项。
它应该是克隆远程存储库时的一个选项。我正在使用最新的 TortoiseHG 2.0.5
【问题讨论】:
标签: mercurial tortoisehg tortoisehg-2.0
如何在 TortoiseHG 中为内部自签名证书禁用 HTTPS 主机身份验证。对于内部服务器,HTTPS 主要用于加密。
TortoiseHG 文档说可以禁用主机验证(即针对证书颁发机构链的验证)here,但我似乎找不到该选项。
它应该是克隆远程存储库时的一个选项。我正在使用最新的 TortoiseHG 2.0.5
【问题讨论】:
标签: mercurial tortoisehg tortoisehg-2.0
在 TortoiseHG 工作台的同步选项卡(或同步屏幕)中,如果您选择了远程路径,您应该会看到一个带有锁定图标的按钮:
这将打开安全窗口,您可以在其中选择选项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)
不过,更好的选择是host fingerprints,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
这应该跳过证书的实际验证,因为您声明您已经信任该证书。
证书上的This documentation 也可能有所帮助。
【讨论】:
hg clone --insecure,它会给您几个证书警告并在消息中显示指纹。从那里您可以复制它并编辑您的 [hostfingerprints] 配置部分。
在“克隆存储库”窗口中展开选项并选中“不验证主机证书”复选框。
【讨论】: