【问题标题】:linux wget secure authenticationlinux wget 安全认证
【发布时间】:2014-10-06 10:58:51
【问题描述】:

我正在尝试下载大量脚本...不幸的是它不起作用。

外壳:

$ wget --secure-protocol=TLSv1 --user=username --password=password --no-check-certificate https://www.example.com/bla/foo/bar/secure/1.pdf

回复:

--2014-10-06 12:49:26--  https://www.example.com/bla/foo/bar/secure/1.pdf
Resolving www.example.com (www.example.com)... xxx.xxx.xx.xx
Connecting to www.example.com (www.example.com)| xxx.xxx.xx.xx|:443... connected.
OpenSSL: error:14094438:SSL routines:SSL3_READ_BYTES:tlsv1 alert internal error
Unable to establish SSL connection.

【问题讨论】:

    标签: linux authentication ssl download wget


    【解决方案1】:

    失败并出现此错误的原因可能有很多,其中包括:

    • 服务器无法处理较新的 TLS 版本
    • 服务器需要客户端身份验证
    • 服务器前面有一个行为不端的 SSL 负载平衡器
    • 在您和服务器之间存在防火墙,在初步检查后拒绝您的流量

    从您提供的信息中可以说的就是这些。 您可以对照sslabs 检查服务器以获取更多信息或在您的问题中提供更多详细信息,例如真实 URL。

    编辑:请求的服务器是 www2.cs.fau.de。此服务器仅支持 SSLv3 和 TLSv1 上的 croaks(而不是仅使用 SSLv3 响应),因此您需要使用 wget 强制执行 SSLv3:

    wget --secure-protocol=SSLv3 ...
    

    服务器的证书可以根据 Linux 上通常受信任的 CA 进行验证,因此您可能不需要 --no-check-certificate 选项。

    大多数浏览器都可以访问此站点,因为如果与更现代的版本连接失败,它们会自动降级到较旧的 SSL 版本,但 curl 或 wget 等工具不会重试降级版本。

    【讨论】:

    猜你喜欢
    • 2011-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-04
    • 2015-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多