我有一台运行在AWS上的Apache2服务器。LetsEncrypt告诉我,我需要续订。
我正试着用命令续签,
./certbot-自动续费
当我输入它时,我得到的响应是:
[Root@IP-172-31-29-161~]#./certbot-自动续费
错误:无法获取/opt/eff.org/certbot/venv/bin/letsENCRYPT的当前安装版本:
回溯(最近一次呼叫):
文件“/opt/eff.org/certbot/venv/bin/letscrypt”,第7行,
从certbot.main导入Main
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第9行,在
导入zope.组件
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/init.py”,第16行,在
从zope.interface导入接口
ImportError:没有名为接口的模块,显示:
./certbot-Auto--版本
并使用以下工具获取更多输出详细信息:
./certbot-自动续订--详细
您可以上传:/var/log/letsENCRYPT/letsENCRYPTT,它告诉我,它无法获取当前安装的版本
[Root@IP-172-31-29-161~]#./certbot-auto--版本
错误:无法获取/opt/eff.org/certbot/venv/bin/letsENCRYPT的当前安装版本:
回溯(最近一次呼叫):
文件“/opt/eff.org/certbot/venv/bin/letscrypt”,第7行,
从certbot.main导入Main
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第9行,在
导入zope.组件
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/init.py”,第16行,在
从zope.interface导入接口
ImportError:没有命名接口的模块
下面是/var/log/letsENCRYPT/letsENCRYPT.log
2017-08-07 04:20:07,050:DEBUG:certbot.main:certbot版本:0.17.0
2017-08-07 04:20:07,050:DEBUG:certbot.main:参数:[‘-DEBUG’]
2017-08-07 04:20:07,050:DEBUG:certbot.main:发现的插件:PluginsRegistry(PlugiEntryPoint#ApachePlugiEntryPoint#MANUAL,PlugiEntryPoint#nginx,PlugiEntryPoint#NULL,PlugiEntryPoint#Standonly,PlugiEntryPoint#Webroot)
2017-08-07 04:20:07,061:DEBUG:certbot.log:根日志记录级别设置为20
2017-08-07 04:20:07,061:INFO:certbot.log:将调试日志保存到/var/log/letsENCRYPT/letsENCRYPTT
2017-08-07 04:20:07,062:DEBUG:certbot.plugins.selection:Requested验证器和安装程序无
2017-08-07 04:20:07,127:DEBUG:certbot_apache.configurator:Apache版本为2.2.32
2017年08月07日04:20:07,274:DEBUG:certbot.plugins.selection:Single候选插件:*阿帕奇
描述:ApacheWeb服务器插件-Beta
接口:IAuthenticator、IInstaller、IPlugin
入口点:apache=certbot_apache.configurator:ApacheConfigurator
已初始化:准备:真
2017年08月07日04:20:07,283:DEBUG:requests.packages.urllib3.connectionpool:Starting新HTTPS连接(1):acme-v01.api.letsEncrypt.org
2017-08-07 04:20:07,457:DEBUG:acme.Client:已收到响应:
Http 200
服务器:Nginx
内容类型:应用程序/json
内容-长度:460
Boulder-请求-ID:GzZXJwydCFGOSGwo73EG3EPQTqumxtuYONZuM2nTLGk
重放-随机数:IN3pp9jM7kD8v-C8b6ECrCXpR3UJDeOzC8Oa2u-IY7A
X-Frame-选项:拒绝
严格-传输-安全:最大年龄=604800
到期时间:星期一,2017年8月7日04:20:07 GMT
缓存控制:Max-age=0,无缓存,无存储
Pragma:无缓存
日期:星期一,2017年8月7日格林尼治标准时间04:20:07
连接:保持连接
“letsENCRYPT.LOG”566L,43304C 1,1顶部,中央舞台:
./certbot-Auto--版本
错误:无法获取/opt/eff.org/certbot/venv/bin/letsENCRYPT的当前安装版本
这很麻烦..。
也许@Schoen能帮上忙。这听起来像是某种包装问题。你也许想试一试
Mv/opt/eff.org/certbot{,.old}
然后重新运行该命令(它应该重新下载一些依赖项并在/opt/eff.org/certbot中创建一个新的Python虚拟环境)。
我试过了。/certbot-自动--调试。/certbot-自动续订
以下是我得到的信息:
[Root@IP-172-31-29-161~]#mv/opt/eff.org/certbot{,.old}
MV:无法统计‘/opt/eff.org/certbot’:没有这样的文件或目录
[Root@IP-172-31-29-161~]#./certbot-auto
致命:Amazon Linux支持目前还处于试验性阶段,…
如果您想要改进它,请确保您有备份
然后使用--DEBUG标志再次运行该脚本!
或者,您也可以自行安装操作系统依赖项并运行此脚本
再来一次--没有引导。
[Root@IP-172-31-29-161~]#./certbot-Auto--调试
亚马逊…的引导依赖关系(您可以使用--no-bootstrap跳过此步骤)
Yum is/usr/bin/yum
已加载插件:优先级、更新-MOTD、升级-帮助器
AMZN-Main|2.1kB 00:00:00
AMZN-更新|2.5 kB 00:00:00
已安装的包GCC-4.8.5-1.22.amzn1.noArch和最新版本
程序包augeas-libs-1.0.0-5.7.amzn1.x86_已安装且为最新版本
套餐1:openssl-1.0.2k-8.105.amzn1.x86_已安装最新版本
Package 1:openssl-devel-1.0.2k-8.105.amzn1.x86_已安装最新版本
包libffi-devel-3.0.13-16.5.amzn1.x86_已安装且为最新版本
程序包system-rpm-config-9.0.3-42.28.amzn1.noArch已安装并已安装最新版本
已安装Package ca-certificates-2015.2.6-65.0.1.16.amzn1.noarch和最新版本
已经安装了包python27-2.7.12-2.121.amzn1.x86_,并且是最新版本
已安装的包python27-devel-2.7.12-2.121.amzn1.x86_已安装且为最新版本
已安装包python27-Virtualenv-15.1.0-1.14.amzn1.noArch并安装最新版本
已安装的包python27-Tools-2.7.12-2.121.amzn1.x86_已安装且为最新版本
已安装最新版本的程序包python27-pip-9.0.1-1.24.amzn1.noArch
无事可做
创建虚拟环境…
安装Python包…
安装成功。
回溯(最近一次呼叫):
文件“/opt/eff.org/certbot/venv/bin/letscrypt”,第7行,
从certbot.main导入Main
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第9行,在
导入zope.组件
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/init.py”,第16行,在
从zope.interface导入接口
ImportError:没有命名接口的模块
[Root@IP-172-31-29-161~]#./certbot-自动续费
错误:无法获取/opt/eff.org/certbot/venv/bin/letsENCRYPT的当前安装版本:
回溯(最近一次呼叫):
文件“/opt/eff.org/certbot/venv/bin/letscrypt”,第7行,
从certbot.main导入Main
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第9行,在
导入zope.组件
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/init.py”,第16行,在
从zope.interface导入接口
ImportError:没有命名接口的模块
我看了一下GitHub的网站。看起来有4种不同的方式来安装客户端。你有推荐的吗?
另外,我需要输入什么信息?不幸的是,我对acme.sh不够熟悉,无法就这些事情向你提供建议。你在哪里安装了certbot-Auto?你的主文件夹?
PWD
有没有可能您加密了您的主目录,但它无法读取它?
尽管这听起来可能很奇怪,但问题也是如此。
因此,尝试安装它并从其他地方运行它。(只是为了确保).,我无法获得acme.sh来提供证书。它确实吊销了LetsEncrypt证书,所以我的站点现在没有证书。仔细阅读文档意味着certbot-auto文件应该位于我的归属子目录(而不是/root子目录)中。我决定重新安装。
我去掉了/root/certbot-auto并重命名了/opt/eff.org子目录。我运行了这个命令。/certbot-auto--apache--debug
安装程序告诉我:
安装成功。
回溯(最近一次呼叫):
文件“/opt/eff.org/certbot/venv/bin/letscrypt”,第7行,
从certbot.main导入Main
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第9行,在
导入zope.组件
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/init.py”,第16行,在
从zope.interface导入接口
ImportError:没有命名接口的模块
当我输入./certbot-AUTO--VERSION时,我收到相同的消息。
我有一个新的~/certbot-AUTO我有一个新的/opt/eff.org,但服务器没有证书。而且,我不知道从这里到哪里去。
有人知道我应该做什么吗?我会删除它们,并为certbot-auto创建一个特定的目录(不使用~目录)
Mkdir/仅用于证书机器人-AUTO
CD/仅限证书机器人-AUTO
再次下载certbot-auto
然后再运行一次
./certbot-AUTO--版本,我来试试。毕竟,我没有什么可失去的。它不起作用。我仍然收到一系列的消息
安装成功。
回溯(最近一次呼叫):
文件“/opt/eff.org/certbot/venv/bin/letscrypt”,第7行,
从certbot.main导入Main
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py”,第9行,在
导入zope.组件
文件“/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/init.py”,第16行,在
从zope.interface导入接口
ImportError:没有命名接口的模块
我累了,现在要去睡觉了。谢谢你的努力-晚安
当你回到这个问题上时,看看这些主题:
Certbot-自动续订失败AWS Linux帮助
P…
在CentOS(AWS)服务器上续订证书时出现各种错误
H…
第一个以sudo chmod 777 Webroot结束
尽管这个命令可能不是您的答案,但它确实指向了一个文件夹上的权限问题--这与我一直在想的类似。
第二个完全不同,其解决方案侧重于PIP/Python,涉及:
取消设置Python_Install_Layout
/ROOT/.local/Share/letsENCRYPT/bin/pip Install--升级certbot,@bmw,您能建议在Amazon Linux上使用Certbot的好方法吗?不幸的是,没有一个好方法在Amazon Linux上使用Certbot。Certbot-Auto在这个平台上一直运行得很好(更多信息请看这篇文章),我们也无法让亚马逊打包这个项目。
如果设置PYTHON_INSTALL_LAYOUT对您不起作用,我认为您最好的选择是使用不同的ACME客户端,但遗憾的是,除了Certbot之外,我对其他任何客户端都不够熟悉,无法给您提供如何使用它的详细说明。我同意,该帖子中有@dany-sh的条目,看起来很有希望:
我找到了一种方法让这份工作
PIP安装PIP--升级
PIP安装Virtualenv--升级
Virtualenv-p/usr/bin/python27 venv27
。Venv27/bin/激活
CD字母加密
取消设置Python_Install_Layout
然后更新letsENCRYPT:
./lets加密-自动-v
并运行命令来续订您的证书。