web-dev-qa-db-ja.com

インターフェイスの問題なしで暗号化しましょう

AWS Ec2 Amazon Linuxを使用していて、Let'sEncryptを使用しようとしています。 Let's Encryptを数か月前に最初にインストールしたとき、証明書の更新に問題はありませんでした。しかし、今はこのエラーが表示され、更新できません。

# ./certbot-auto --debug
Error: couldn't get currently installed version for /opt/eff.org/certbot/venv/bin/letsencrypt: 
Traceback (most recent call last):
  File "/opt/eff.org/certbot/venv/bin/letsencrypt", line 7, in <module>
    from certbot.main import main
  File "/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/certbot/main.py", line 7, in <module>
    import zope.component
  File "/opt/eff.org/certbot/venv/local/lib/python2.7/dist-packages/zope/component/__init__.py", line 16, in <module>
    from zope.interface import Interface
ImportError: No module named interface

PYTHON_INSTALL_LAYOUTの設定を解除し、pip、virtualenvをアップグレードしてみました。運がない。

この問題と似ているようです Letsencrypt ImportError:更新中にAmazon linuxにinterfaceという名前のモジュールがありません しかし、ディレクトリは異なります。 /opt/eff.org/certbot/venv/bin/letsencryptをrmしたいのかわからない

10
Maca

私はちょうど今AmazonLinuxでこの問題にぶつかりました。私のために働いた修正は certbot GitHubの問題で詳しく説明されています

Certbotのインストールが不適切であると思われる問題と同じ問題が発生しました。次のコマンドを実行して修正しました。

unset PYTHON_INSTALL_LAYOUT
/root/.local/share/letsencrypt/bin/pip install --upgrade certbot

サーバーにpipを個別にインストールしていませんでした。これは、certbotインストールの一部としてのみ利用可能でした。したがって、これがpipを使用してインストールを適切にアップグレードする唯一の方法でした。

19
Mike

私はこの問題を次の方法で修正することができました:

Sudo rm -rf /root/.local/share/letsencrypt/

Sudo rm -rf /opt/eff.org/certbot/

次に、certbot-autoをユーザーモード(ec2-user)で再実行します。

./certbot-auto renew -v --debug
33
JoeV

私のようにEC2インスタンスにpipがインストールされている場合は、次のようにするだけです。

rm -rf /opt/eff.org/*
pip install -U certbot
certbot renew --debug

ダウンロードcertbot-auto via wgetは常に問題を引き起こしているので、上記の方法をお勧めします。

1
heisian