如何在反向代理服务器上安装 Let's Encrypt SSL?

How to install Let's Encrypt SSL on reverse proxied server?

所以我在 DigitalOcean 中创建了一个 Ubuntu 16.04 droplet 并使用 ServerPilot 进行设置。 ServerPilot 使用 Apache 和 nginx 作为反向代理自动在您的 Ubuntu 之上创建一个网络服务器。

现在我不确定如何在反向代理服务器上安装 Let's Encrypt SSL。由于 nginx 服务于前端,我是否必须为 nginx 使用 运行 Certbot?我正在尝试使用 HTTPS 访问我的网站。

反向代理服务器的过程是否不同?

不,没有区别。您可以使用 Apache 的 webroot 或在 Nginx 中包含一条规则来直接回答所有 ACME 挑战请求。

例子

server {
    listen 80;
    server_name example.org;

    location / {
        return 301 https://$host$request_uri;
    }

    location /.well-known/acme-challenge {
                root /tmp;
        }
}

然后使用 /tmp 或任何其他途径来挑战。就我个人而言,我使用我自己的 PHP 编写的客户端,比官方客户端简单得多。参见 https://github.com/kelunik/acme-client