Назад | Перейти на главную страницу

wget получает неправильный сертификат ssl

Если я перейду на этот URL https://solarpaces2014.pse.de/typo3/fileadmin/template/images/banner.jpg ищу ssl-сертификаты, тогда я вижу действительный (подстановочный) сертификат для нашего домена pse.de.

Если я пойду по этому URL https://85.214.107.230/img/common/globe.png (тот же IP-адрес), тогда браузер жалуется, что а) срок действия сертификата истек и б) что он самоподписан. Хорошо, это сертификат для сайта администратора plesk, и никто, кроме нашего администратора, все равно не использует этот сайт.

Если я отправлю этот файл curl Это случилось:

$ curl https://solarpaces2014.pse.de/typo3/fileadmin/template/images/banner.jpg > /dev/null 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 90217  100 90217    0     0  16960      0  0:00:05  0:00:05 --:--:--  319k

$ curl https://85.214.107.230/img/common/globe.png > /dev/null 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html
....

curl доволен первым сертификатом и жалуется на второй, как и ожидалось.

Однако когда я делаю то же самое с wget:

$ wget https://solarpaces2014.pse.de/typo3/fileadmin/template/images/banner.jpg -O /dev/null 
--2014-08-13 15:20:44--  https://solarpaces2014.pse.de/typo3/fileadmin/template/images/banner.jpg
Resolving solarpaces2014.pse.de... 85.214.107.230
Connecting to solarpaces2014.pse.de|85.214.107.230|:443... connected.
ERROR: cannot verify solarpaces2014.pse.de’s certificate, issued by “/C=US/ST=Virginia/L=Herndon/O=Parallels/OU=Parallels Panel/CN=Parallels Panel/emailAddress=info@parallels.com”:
  Self-signed certificate encountered.
ERROR: certificate common name “Parallels Panel” doesn’t match requested host name “solarpaces2014.pse.de”.
To connect to solarpaces2014.pse.de insecurely, use ‘--no-check-certificate’.

Почему на земле wget получение неправильного сертификата? Это wget проблема или есть проблема с нашей конфигурацией apache?

Быстрый поиск показывает, что поддержка указания имени сервера TLS (SNI), который вам нужен в вашем случае, был представлен в версии 1.14 wget.

Curl немного раньше включал поддержку SNI.

Например, RHEL / CentOS 6 включает wget версии 1.12 и Debian wheezy 1.13, поэтому я ожидаю, что они еще не поддерживают SNI.