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

Posted October 2, 2017 2.8k views
ApacheUbuntu 16.04

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.CryptographyHASSSLST:
AttributeError: module ‘lib’ has no attribute 'CryptographyHASSSL_ST’

Any help is very apreciated. Best regards Kresten

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.

Submit an Answer
1 answer


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!