3
votes

SSLError: [Errno 1] _ssl.c: 510: erreur: 1409442E: Routines SSL: SSL3_READ_BYTES: version du protocole d'alerte tlsv1

django-push-notifications fonctionnait à la fois avec des certificats de bac à sable et de production. Mais depuis hier, il échoue avec les erreurs suivantes.

SSLError: [Errno 1] _ssl.c: 510: erreur: 1409442E: Routines SSL: SSL3_READ_BYTES: version du protocole d'alerte tlsv1

Aucune modification de notre code ou de nos serveurs. Des idées, pourquoi cela a cessé de fonctionner.

<₹UPDATE

OpenSSL 1.0.1f 6 janvier 2014 Ubuntu: 14.04

Je suis passé à OpenSSL 1.1.1a le 20 novembre 2018 mais les mêmes résultats.

J'ai également vérifié la version TLS prise en charge par mon python en utilisant ce qui suit et j'ai obtenu "TLS 1.3".

python -c "import requests; print (requests.get (' https: //www.howsmyssl .com / a / check ', verify = False) .json () [' tls_version ']) "


2 commentaires

la même chose nous est arrivée, pas encore de résolution


nous voyons aussi que parfois les connexions réussiront et parfois elles ne réussiront pas


3 Réponses :


0
votes

D'un point de vue OpenSSL, une connexion SSL Socket client à un serveur SSL échoue car aucune des versions SSL / TLS Socket prises en charge par le client n'est activée (ou prise en charge) sur le serveur.

Je suppose donc que le serveur a limité les versions de protocole de SSL / TLS qu'il prend en charge au point où votre client openssl ne peut plus le gérer. À une supposition TLS 1.2 et TLS 1.3 seulement maintenant. Peut-être TLS 1.1.

Pouvez-vous mettre à jour la version OpenSSL de votre client vers une version ultérieure pour voir si cela résout les problèmes de connexion?

Il peut également être utile de vérifier (si vous le pouvez) les versions de protocole que vous activez côté client pour vous assurer que toutes les versions de protocole les plus élevées sont activées - TLS 1.1, TLS 1.2, TLS1.3 - si vous avez openssl 1.1 .1.


2 commentaires

Salut Shane, j'ai mis à jour la question d'origine avec plus d'informations. Merci.


D'où vient ce message (le serveur tls ou le client tls)? Avez-vous des journaux de l'autre côté? Contrôlez-vous l'autre côté? Cela arrive-t-il tout le temps ou juste parfois? Si l'autre côté est Apple et que cela n'arrive que parfois, cela ressemble à un problème de serveur Apple où cela dépend du serveur Apple que vous avez touché.



1
votes

Certaines personnes sont passées à tls 1.2 D'autres travaillent à nouveau sans rien faire. Cela ressemble à un problème avec certains serveurs Apple.

Nous avons ajouté une logique de nouvelle tentative à notre code de connexion lorsque celui-ci a atteint l'un de ces serveurs Apple défectueux.

https://forums.developer.apple.com/thread/114489

plusieurs autres rapports sur les forums Apple https://forums.developer.apple.com/content?query=push


0 commentaires

0
votes

Il semble que ce soit un problème de serveur Apple. Et cela a été résolu maintenant. Les notifications push fonctionnent désormais comme prévu.


0 commentaires