0

J'essaie de publier des alertes Opscenter sur un point de terminaison AWS Api Gateway (de la forme https://xxxxxxxx.execute-api.us-east-1.amazonaws.com/opscenteralerts/alerts). J'ai été en mesure de poster au point de terminaison de la passerelle api à partir du serveur flask.J'ai également essayé de poster les alertes opscenter à un autre serveur Web. Mais je ne suis pas en mesure de le publier sur un point de terminaison API Gateway. J'ai vérifié mes groupes de sécurité et le point de terminaison de l'API est également ouvert. Est-ce que je manque quelque chose?datastax opscenter posturl.conf n'envoie pas d'alertes à un point de terminaison AWS api gateway

Le dessous est la trace de pile dans opscenterd.log

2017-07-04 18:58:06,651 [opscenterd] ERROR: [Errno 1] Received fatal alert: handshake_failure 
    File "/usr/share/opscenter/lib/py/twisted/internet/selectreactor.py", line 149, in _doReadOrWrite 
    why = getattr(selectable, method)() 
    File "/usr/share/opscenter/lib/py/twisted/internet/legacy_ssl.py", line 645, in doConnect 
    self._connectDone() 
    File "/usr/share/opscenter/lib/py/twisted/internet/legacy_ssl.py", line 1182, in _connectDone 
    self.startTLS(self.ctxFactory) 
    File "/usr/share/opscenter/lib/py/twisted/internet/legacy_ssl.py", line 542, in startTLS 
    if LegacyConnection.startTLS(self, ctx, client): 
    File "/usr/share/opscenter/lib/py/twisted/internet/tcp.py", line 50, in startTLS 
    self.socket = JConnection(ctx.getContext(), self.socket, False) 
    File "/usr/share/opscenter/lib/py/JythonSSLWrapper.py", line 88, in __init__ 
    self._wrapped_socket = self._create_client_socket(sock) 
    File "/usr/share/opscenter/lib/py/JythonSSLWrapper.py", line 107, in _create_client_socket 
    return self._context.wrap_socket(sock) 
    File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/ssl.py", line 991, in wrap_socket 
    return SSLSocket(sock=sock, server_side=server_side, 
    File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/ssl.py", line 521, in __init__ 
    self.do_handshake() 
    File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/ssl.py", line 630, in do_handshake 
    self._sock._handle_channel_future(handshake, "SSL handshake", wait=True) 
    File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/_socket.py", line 365, in handle_exception 
    raise _map_exception(jlx) 
(MainThread) 

Répondre

0

La plupart des erreurs de connexion SSL avec la passerelle API sont causés par le client ne supportant pas la SNI. API Gateway nécessite SNI et ne fonctionnera pas sans elle. Opscenter prend-il en charge SNI?