证书通用名称`*.c.ssl.fastly.net'与请求的主机名不匹配

从此醉*_*从此醉 4 linux ssl

我正在使用Linux做下载的东西.我用get"wget"命令.但我得到了这个错误:

[root@vps server]# wget https://pypi.python.org/packages/source/x/xlrd/xlrd-0.9.3.tar.gz
--2014-05-10 11:24:40--  https://pypi.python.org/packages/source/x/xlrd/xlrd-0.9.3.tar.gz
Resolving pypi.python.org... 103.245.222.175
Connecting to pypi.python.org|103.245.222.175|:443... connected.
ERROR: certificate common name `*.c.ssl.fastly.net' doesn't match requested host name `pypi.python.org'.
To connect to pypi.python.org insecurely, use `--no-check-certificate'.
Unable to establish SSL connection.
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

Ste*_*ich 5

看起来您使用的wget版本仅尝试根据证书的公用名验证主机名,但无法检查主题备用名称,这些名称包含*.python.org并因此匹配主机名.看起来你至少需要wget版本1.12.对于谷歌的类似报道wget subject alternative name.

顺便说一句,即使某些程序建议您只需像wget那样切换证书验证,在这种情况下,您必须问自己这是否是解决问题的正确方法.通常它不是,并且有很多代码会导致问题,因为作者只是做了简单的事情并关闭了证书验证.这包括银行应用程序等.没有证书验证的HTTPS实际上毫无价值.