云网牛站
所在位置:首页 > Linux云服务器 > 为Let’s Encrypt颁发的SSL证书续期

为Let’s Encrypt颁发的SSL证书续期

2017-12-15 15:20:42作者:Linux大神稿源:linuxdashen

HTTPS加密简介以及Nginx安装Let’s Encrypt免费SSL/TLS证书一文,我介绍了Linux服务器如何向Let’s encrypt申请并安装SSL证书,Let’s encrypt的证书是有有效期的,所以如果你的网站服务器是nginx,而SSL证书又快到期了,那么请看下方了解如何续期。

 

为Let’s Encrypt颁发的SSL证书续期

首先SSH登录Linux服务器,停止Nginx进程。

sudo service nginx stop or sudo systemctl stop nginx

然后输入下面的命令为SSL证书续期。

cd /letsencrypt

./letsencrypt-auto renew --email your-email-address --agree-tos

将your-email-address替换为你的真实邮箱地址,–agree-tos意思是agree terms of service. 以上两条命令是假设你使用git安装letsencrypt客户端。

git clone https://github.com/letsencrypt/letsencrypt

如果你使用Linux发行版的软件源安装letsencrypt客户端,那么使用下面的命令来为SSL证书续期。

letsencrypt renew --email your-email-address --agree-tos

如果续期成功,那么你会看到如下消息。

Congratulations, all renewals succeeded.

续期成功后启动nginx进程。

sudo service nginx start or sudo systemctl start nginx

如果续期后,在浏览器中打开你的网站还是会显示证书过期错误,那么你可能需要重启你的计算机,然后再用浏览器打开网站。

 

DVSNI Challenge Failed

如果你的网站受CDN的防护,那么在续期之前,你需要修改域名的A记录,将www域名和不带www的域名的A记录都指向你的服务器,修改后再输入续期的命令,续期成功后,把你的网站重新置于CDN的防护下。

如果续期之前不修改A记录,那么在输入续期的命令后你会看见下面的错误。

urn:acme:error:tls :: The server experienced a TLS error during domain verification :: Failed to connect to host for DVSNI challenge. Skipping.

Let’s encrypt服务器在续期时会用DVSNI来确认你拥有服务器的控制权,Let’s encrypt服务器会查找域名的A记录,得到IP地址,然后再与你现在登录的服务器IP地址作比较,如果两个IP地址相同,那么DVSNI验证就会成功,反之DVSNI验证会失败。

 

相关主题

Ubuntu 16.04安装配置Nginx使用Let‘s Encrypt

精选文章
热门文章