在 Amazon Linux AMI 中安装 certbot nginx

在 Amazon Linux AMI 中安装 certbot nginx

我有一个很老亚马逊 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 

相关内容