letsencrypt python flask openssl werkzeug pyopenssl

python - flask letsencrypt



AttributeError: el objeto ''Context'' no tiene atributo ''wrap_socket'' (1)

A partir del 0.10, Werkzeug ya no admite contextos OpenSSL. Esta decisión se tomó porque es más fácil admitir ssl.SSLContext en las versiones de Python. Tu opción para volver a escribir este código es esta:

if __name__ == "__main__": context = (''cert.crt'', ''key.key'') app.run(host=''0.0.0.0'', port=80, ssl_context=context, threaded=True, debug=True)

Ver http://werkzeug.pocoo.org/docs/0.10/serving/ para todas las posibilidades.

Intento configurar un servidor Flask que use un contexto OpenSSL. Sin embargo, dado que moví el script en un servidor diferente, sigue arrojando el siguiente error, sin importar si estoy usando Python 2.7 o 3.4 y sin importar qué método SSL elegí (SSLv23 / TLSv1 / ...):

File "/usr/lib/python3.4/threading.py", line 920, in _bootstrap_inner self.run() File "/usr/lib/python3.4/threading.py", line 868, in run self._target(*self._args, **self._kwargs) File "/usr/local/lib/python3.4/dist-packages/werkzeug/serving.py", line 602, in inner passthrough_errors, ssl_context).serve_forever() File "/usr/local/lib/python3.4/dist-packages/werkzeug/serving.py", line 506, in make_server passthrough_errors, ssl_context) File "/usr/local/lib/python3.4/dist-packages/werkzeug/serving.py", line 450, in __init__ self.socket = ssl_context.wrap_socket(self.socket, AttributeError: ''Context'' object has no attribute ''wrap_socket''

El siguiente código:

if __name__ == "__main__": context = SSL.Context(SSL.SSLv23_METHOD) context.use_privatekey_file(''key.key'') context.use_certificate_file(''cert.crt'') app.run(host=''0.0.0.0'', port=80, ssl_context=context, threaded=True, debug=True)

¡Muchas gracias por adelantado! Estoy feliz por cualquier ayuda