certbot renew --> AttributeError: module 'lib' has no attribute 'Cryptography_HAS_SSL_ST'

Hi, I’m trying to renew my SSL certificate on apache running on an ubuntu droplet with certbot. I have followed this tutorial:

I run sudo certbot renew and I get this message:

root@DagensSalg:~# sudo certbot renew Traceback (most recent call last): File “/usr/local/bin/certbot”, line 7, in <module> from certbot.main import main File “/usr/local/lib/python3.5/dist-packages/certbot/”, line 9, in <module> from acme import jose File “/usr/local/lib/python3.5/dist-packages/acme/jose/”, line 37, in <module> from acme.jose.interfaces import JSONDeSerializable File “/usr/local/lib/python3.5/dist-packages/acme/jose/”, line 9, in <module> from acme.jose import util File “/usr/local/lib/python3.5/dist-packages/acme/jose/”, line 5, in <module> import OpenSSL File “/usr/local/lib/python3.5/dist-packages/OpenSSL/”, line 8, in <module> from OpenSSL import crypto, SSL File “/usr/local/lib/python3.5/dist-packages/OpenSSL/”, line 115, in <module> if _lib.Cryptography_HAS_SSL_ST: AttributeError: module ‘lib’ has no attribute ‘Cryptography_HAS_SSL_ST’

Any help is very apreciated. Best regards Kresten


Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.


I had a similar problem in the past and the following fixed the problem for me:

apt remove python3-openssl -y apt autoremove

Make sure that this file: /usr/local/lib/python3.5/dist-packages/OpenSSL/ was removed.

Then install the package again:

apt install python3-openssl -y

Of course, as always make sure to backup your droplet before making any changes!

Hope that this helps! Regards, Bobby