gpt4 book ai didi

svn - 使用 SVN 的 SSL 握手失败

转载 作者:太空宇宙 更新时间:2023-11-03 12:41:27 27 4
gpt4 key购买 nike

我正在尝试访问我已经使用了一段时间的 SVN 服务器,但现在我收到此错误:

SSL handshake failed: SSL error: A TLS warning alert has been received.

在其他机器上(所有这些都是在 CentOS 上完成的),我以前没有用它访问过服务器,提示我是 (R)eject, accept (t)emporarily or accept (p)ermanently?所提供证书的选项,然后我就可以成功连接了。我的结论是旧证书被缓存了,我需要获得一个新证书,但是我一直无法找到清除它的方法,并且在运行 svn 时再次收到此提示。

我确实阅读了许多与此类似的问题,这导致我清除/删除了我的 .subversion 文件夹,但即使在那之后它仍然不会提示我有关证书的信息并且它继续因上述错误而失败。有什么想法吗?

最佳答案

您没有指定遇到此问题的 CentOS 版本。

EL 6 附带的颠覆与 GnuTLS 相关联,这是对与 OpenSSL 相关联的旧版本的更改。

您可以使用 ldd 进行测试:

$ ldd /usr/bin/svn | grep ssl
$ ldd /usr/bin/svn | grep tls
libgnutls.so.26 => /usr/lib/libgnutls.so.26 (0x0030f000)
$

GnuTLS 库在某些情况下更为特殊。两个最常见的:

  1. 远程站点使用 DES 等弱密码。
  2. 远程站点的证书名称与您指定的名称不匹配。

在名称不匹配的情况下,您可以使用 IP 地址而不是名称来回避问题。如果主机是 foo.com 并且 IP 地址为 1.2.3.4,您可以尝试以下方法:

svn switch --relocate https://foo.com/my-repo-name https://1.2.3.4/my-repo-name

您也可以尝试从源代码构建颠覆并在配置中使用 openssl 而不是 gnutls。

关于svn - 使用 SVN 的 SSL 握手失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11653044/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com