Eri*_*ric 5 cryptography pip certbot
我想通过 certbot 自动续订证书,但不起作用,出现错误“ImportError: No module named cryptography”
# ./certbot-auto --dry-run
错误:无法获取当前安装的 /opt/eff.org/certbot/venv/bin/letsencrypt 版本:回溯(最近一次调用):文件“/opt/eff.org/certbot/venv/bin/letsencrypt” ,第 7 行,在 from certbot.main import main 文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第 10 行,在 import josepy as何塞文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/josepy/ INIT.py”,第 41 行,来自 josepy.interfaces 导入 JSONDeSerializable 文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/josepy/interfaces.py”,第 7 行,在从 josepy 导入错误,util 文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/josepy/util.py”,第 7 行,导入 OpenSSL 文件“/opt/eff .org/certbot/venv/local/lib/python2.7/dist-packages/OpenSSL/ init .py”,第 8 行,来自 OpenSSL 导入加密,SSL 文件“/opt/eff.org/certbot/venv/local /lib/python2.7/dist-packages/OpenSSL/crypto.py", line 12, in from cryptography import x509 ImportError: No module named cryptography
我尝试安装密码学,并得到了这个结果
sudo /opt/eff.org/certbot/venv/bin/pip 安装密码
您使用的是 pip 版本 9.0.1,但版本 19.2.3 可用。您应该考虑通过“pip install --upgrade pip”命令进行升级。
然后我尝试了这个命令 pip install --upgrade pip
弃用:Python 2.7 的生命周期将于 2020 年 1 月 1 日结束。请升级您的 Python,因为在该日期之后将不再维护 Python 2.7。pip 的未来版本将不再支持 Python 2.7。有关 pip 中 Python 2 支持的更多详细信息,请访问https://pip.pypa.io/en/latest/development/release-process/#python-2-support 要求已经是最新的:pip in / usr/lib/python2.7/dist-packages/pip-19.2.3-py2.7.egg (19.2.3)
如何安装密码学?
小智 15
成功安装我在运行 certbot-auto 并将其升级到新版本后收到完全相同的错误消息。
以下是我如何解决这个问题:
pip install cryptography
cd /opt/eff.org/certbot/venv/lib64/python2.7
mv site-packages site-packages.sav
ln -s dist-packages/ site-packages
Run Code Online (Sandbox Code Playgroud)
这是因为 letencrypt 的自定义版本的 python 正在寻找site-packages子文件夹下的包,而在我的情况下它是空的,并且包在dist-packages子文件夹下。
注意:如果您看到加密已成功安装,则无需运行 'pip install --upgrade pip' 命令并且可以忽略警告信息。
| 归档时间: |
|
| 查看次数: |
4378 次 |
| 最近记录: |