ssl – 如何使用Lets Encrypt为子域添加证书

前端之家收集整理的这篇文章主要介绍了ssl – 如何使用Lets Encrypt为子域添加证书前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个Nginx服务器,我试图使用Let的加密添加SSL.

我的开发设置如下:

url : dev.domain.in
root: /var/www/dev/html

制作如下:

url : domain.in
root: /var/www/production/html

所以在我的Nginx默认页面中,我有两个服务器块,一个用于开发,另一个用于生产

我想为两台服务器提供一个证书.

我知道根据Let’s Encrypt网站的命令如下

cd /opt/letsencrypt ./letsencrypt-auto certonly -a webroot
–webroot-path=/usr/share/Nginx/html -d example.com -d www.example.com

但是,只有当SUBDOMAIN具有相同的webroot且在我的情况下不是真的时才能这样做.

那么我如何在这里添加CERT

请帮帮我

最佳答案
我在我的Nginx盒子上的所有虚拟主机上使用了一个通用的webroot.

/opt/certbot/certbot-auto certonly --webroot --agree-tos -w /srv/www/letsencrypt/ \
-d example.com,www.example.com

…在Nginx中我有snippets / letsencrypt.conf:

location ~ /.well-known {
    root /srv/www/letsencrypt;
    allow all;
}

…包含在每个站点的服务器块中.

.well-known目录中的文件是临时的 – 它们只存在足够长的时间以完成授权过程,然后被删除.

注册成功后,我会通过include ssl / example.com.conf将证书定义包含在服务器块中;该文件包含以下内容

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

…以及相关的listen指令以在端口443上启用SSL.

您可以在多个服务器块中包含相同的定义.

我的证书中还有其他子域作为SAN,我有example.com,www.example.com和click.example.com等其他子域的单独服务器块 – 所有子域都使用相同的证书.

猜你在找的Nginx相关文章