Impossible d'établir la connexion SSL wget sur Ubuntu 14.04 LTS
J'ai essayé de télécharger une image à travers wget mais j'ai une erreur: Impossible d'établir une connexion SSL.
wget https://www.website.com/image.jpg
--2015-02-26 01:30:17-- https://www.website.com/image.jpg
Resolving www.website.com (www.website.com)... xx.xxx.xx.xx
Connecting to www.website.com (www.website.com)|xx.xxx.xx.xx|:443... connected.
Unable to establish SSL connection.
Mon cas de test:
- Utiliser Ubuntu 12.04.4 LTS (GNU/Linux 3.8.0-44-generic x86_64), GNU
Wget 1.13.4 construit sur linux-gnu, j'ai été en mesure de télécharger l'image
à l'aide du code ci-dessus. Pas d'erreur. - Utiliser Ubuntu 14.04 LTS (GNU/Linux 3.13.0-24-generic x86_64), GNU Wget 1.15 construit sur linux-gnu, je n'étais pas en mesure de télécharger l'image
à l'aide du code ci-dessus.
Une autre variable, c'est que l'www.website.com utilise le protocole TLS 1.0. Je n'ai pas une idée de comment cela affecte wget. Mais si je wget une image à partir de TLS 1.2 sites, je ne reçois pas toutes les erreurs de connexion ssl à partir de deux cas de test.
Est Ubuntu 14.04 ou wget 1.15 pas compatible avec le protocole TLS 1.0 sites web?
Ai-je besoin d'installer ou de télécharger n'importe quelle bibliothèque/logiciel pour activer cette connexion?
Cela ressemble à la
Si cette erreur se produit avec n'importe quel autre site SSL trop ajouter cette information à votre question. Si cela se produit uniquement avec un site spécifique et si ce site fonctionne dans le navigateur afficher l'URL exacte. Si ce site ne fonctionne pas dans le navigateur, c'est un problème si le site lui-même.
J'ai téléchargé www.website.com s'certificat par le biais de google Chrome: cliqué verrouillage signe -> onglet connexion -> les informations de certificat lien -> détails -> URI link. Ensuite, j'ai copié sur le serveur, puis comment installer le certificat racine (askubuntu.com/questions/73287/...). Puis, après
pour l'instant il ne se produit que pour le site que je suis en essais. Je ne peux pas le poster ici parce que c'est confidentiel.
Double Possible de Impossible d'établir la connexion SSL, comment puis-je réparer mon certificat SSL?
wget
est un échec lors de la connexion SSL. Ceci est probablement produit en raison de votre Ubuntu 14.04 n'a pas confiance dans le domaine www.website.com. Vous devrez peut-être installer le présent site web du certificat de serveur dans votre magasin de confiance.Si cette erreur se produit avec n'importe quel autre site SSL trop ajouter cette information à votre question. Si cela se produit uniquement avec un site spécifique et si ce site fonctionne dans le navigateur afficher l'URL exacte. Si ce site ne fonctionne pas dans le navigateur, c'est un problème si le site lui-même.
J'ai téléchargé www.website.com s'certificat par le biais de google Chrome: cliqué verrouillage signe -> onglet connexion -> les informations de certificat lien -> détails -> URI link. Ensuite, j'ai copié sur le serveur, puis comment installer le certificat racine (askubuntu.com/questions/73287/...). Puis, après
/etc/ssl/certs$ ls
, j'ai trouvé le certificat. J'ai essayé de wget
à nouveau, mais j'obtiens toujours la même erreur.pour l'instant il ne se produit que pour le site que je suis en essais. Je ne peux pas le poster ici parce que c'est confidentiel.
Double Possible de Impossible d'établir la connexion SSL, comment puis-je réparer mon certificat SSL?
OriginalL'auteur xanderlopez | 2015-02-27
Vous devez vous connecter pour publier un commentaire.
Alors je suppose que c'est l'un des sites qui est incompatible avec TLS1.2. Openssl utilisé dans la 12.04 ne pas utiliser TLS1.2 sur le côté client alors qu'avec la 14.04, il utilise TLS1.2 ce qui pourrait expliquer la différence. Pour contourner essayez d'utiliser explicitement
. Si cela ne fonctionne pas vérifiez si vous pouvez accéder au site avec--secure-protocol=TLSv1
openssl s_client -connect ...
(probablement pas) et avecopenssl s_client -tls1 -no_tls1_1, -no_tls1_2 ...
.Veuillez noter qu'il pourrait y avoir d'autres causes, mais celui-ci est le plus probable et sans obtenir l'accès au site, tout n'est que spéculation de toute façon.
De l'hypothèse d'un problème en détail: Habituellement, les clients utilisent le plus compatible avec poignée de main pour accéder à un serveur. C'est le SSLv23 poignée de main qui est compatible avec les anciennes versions SSL mais annonce le meilleur TLS version prend en charge le client, de sorte que le serveur peut choisir la meilleure version. Dans ce cas, wget annoncer TLS1.2. Mais il y a quelques cassé les serveurs qui n'a jamais supposé qu'un jour il y aurait quelque chose comme TLS1.2 et qui refusent la poignée de main si le client annonce un soutien pour cette nouvelle version (à partir de 2008!) au lieu de simplement répondre avec la meilleure version que le serveur prend en charge. Pour accéder à ces brisé des serveurs, le client dispose de mentir et de prétendre qu'il ne supporte TLS1.0 comme la meilleure version.
Le problème est que le serveur, pas le client.
La plupart des navigateurs de travail autour de ces brisé serveurs par une nouvelle tentative avec une version inférieure. La plupart des autres applications ne parviennent pas à en permanence si la première tentative de connexion échoue, c'est à dire ne pas rétrograder par lui-même et on doit imposer une autre version de certains paramètres spécifiques à l'application.
OriginalL'auteur Steffen Ullrich
vous devez utiliser l'ancienne version de wget, j'ai eu même problème. j'ai été en utilisant wget 1.12.donc pour résoudre ce problème il y a 2 façon:
Mise à jour
wget
ou de l'utilisationcurl
OriginalL'auteur ParasPatel
Si vous faites confiance à l'hôte, ajouter le certificat valide, spécifiez
--no-check-certificate
ou d'ajouter:dans votre
~/.wgetrc
.Dans certains cas rares, l'heure de votre système pourrait être out-of-sync donc invalider les certificats.
OriginalL'auteur kenorb
Bien que ce n'est presque certainement pas la Fpo problème, vous pouvez également obtenir
Unable to establish SSL connection
dewget
si vous êtes derrière un proxy et n'ont pasHTTP_PROXY
etHTTPS_PROXY
les variables d'environnement définies correctement. Assurez-vous de définirHTTP_PROXY
etHTTPS_PROXY
pour pointer vers votre serveur proxy.C'est une commune de la situation si vous travaillez pour une grande entreprise.
OriginalL'auteur Matt Messersmith