我有一个很老亚马逊 Linux AMI我需要为运行 php 网站的 nginx 安装 certbot。现在我需要在这个网站上安装 ssl。但我无法在我的服务器上安装 certbot-nginx。每当我尝试安装
sudo yum install python2-certbot-nginx.noarch
它显示了一些依赖项错误。最后像这样
--> Processing Dependency: python-requests >= 2.6.0 for package: python2-requests-2.6.0-0.el7.noarch
---> Package python2-six.noarch 0:1.9.0-0.el7 will be installed
--> Processing Dependency: python-six >= 1.9.0 for package: python2-six-1.9.0-0.el7.noarch
---> Package setools-libs.x86_64 0:3.3.7-34.23.amzn1 will be installed
--> Finished Dependency Resolution
Error: Package: python2-requests-2.6.0-0.el7.noarch (epel)
Requires: python-requests >= 2.6.0
Installed: python26-requests-1.2.3-5.10.amzn1.noarch (@amzn-main)
python-requests = 1.2.3-5.10.amzn1
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
Requires: python2-cryptography
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
Requires: pyOpenSSL >= 0.13.1
Installing: python26-pyOpenSSL-0.10-2.8.amzn1.x86_64 (amzn-main)
pyOpenSSL = 0.10-2.8.amzn1
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
Requires: python2-pyasn1
Error: Package: certbot-1.11.0-1.el7.noarch (epel)
Requires: systemd
Error: Package: python2-six-1.9.0-0.el7.noarch (epel)
Requires: python-six >= 1.9.0
Installed: python26-six-1.8.0-1.23.amzn1.noarch (@amzn-main)
python-six = 1.8.0-1.23.amzn1
Error: Package: python2-josepy-1.3.0-2.el7.noarch (epel)
Requires: python2-setuptools
Error: Package: python2-josepy-1.3.0-2.el7.noarch (epel)
Requires: python2-cryptography
Error: Package: python2-certbot-1.11.0-1.el7.noarch (epel)
Requires: python2-cryptography >= 1.2.3
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
Requires: pyOpenSSL >= 0.13.1
Available: python26-pyOpenSSL-0.10-2.8.amzn1.x86_64 (amzn-main)
pyOpenSSL = 0.10-2.8.amzn1
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
我尝试安装 yum-utils 和package-cleanup --leaves
但仍然出现以下错误。有人能告诉我如何避免这个问题吗?谢谢。顺便说一下,我的服务器操作系统版本
NAME="Amazon Linux AMI"
VERSION="2018.03"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2018.03"
PRETTY_NAME="Amazon Linux AMI 2018.03"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2018.03:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/"
有人能帮我吗?我认为如果我可以删除所有这些依赖关系问题,那么我就可以安装 python2-certbot-nginx 并且可以执行 ssl。我能得到任何帮助吗?提前致谢。
答案1
几个月前我在 Amazon Linux 上也遇到了类似的问题。通过 pip 安装 certbot 解决了这个问题。我使用的命令如下:
pip install virtualenv
virtualenv ~/.certbot
source ~/.certbot/bin/activate
pip install 'setuptools<41'
pip install certbot
pip install 'parsedatetime<2.6'
现在只需通过以下命令生成证书
sudo ~/.certbot/bin/certbot certonly --webroot -w /usr/share/nginx/html/example -d example.com