Linux – certbot-auto ImportError: No module named _ssl

certbotdebiandebian-jessieletsencryptlinux

Running certbot-auto gives this output:

Error: couldn't get currently installed version for …

File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 140, in init_static_locks
import("_ssl")
ImportError: No module named _ssl

This occurred after a dist-upgrade from Debian 7 -> Debian 8

Best Answer

certbot-auto uses its own installed virtual environment, including its own build of python. This was (naturally) not updated in the dist-upgrade to Jessie. certbot-auto did not detect that it needed a rebuild, thinking that all the dependencies were satisfactorily already installed.

So the fix was:

rm -rf /opt/eff.org
/usr/local/bin/certbot-auto

which then downloaded and rebuilt all that was needed.

Related Question