刚得到的域名是没有安全证书的,在地址栏 https 处有警告,在 cPanel 主域中也会提示有风险,因此我们需要给我们的网站设置 SSL 证书
1. SSL 证书申请并安装在 cPanel 上
1.1 登陆 ZeroSSL 官方网站
登陆ZeroSSL,然后输入自己的主域的地址,然后点击“Create Free SSL Certificate”,点击“New Certificate”
![]() |
![]() |
输入自己的域名,然后一直点击下一步

1.2 上传验证文件/下载 ssl 证书
这里我们点击“Download Auth File”,然后在 cPanel 主页找到“文件管理器”,进入到“public_html”文件夹中,新建“.well-known”文件夹,然后新建“pki-validation”文件夹,进入到此文件夹中,将刚才下载的文件上传进去,然后回到 ssl 的网站,点击第三步的链接会显示刚才下载的文件中的内容,此时说明验证成功,点击“Next Step”,这时会提示我们下载一个“xx.com”的压缩包,里面装有我们的 ssl 证书,点击下载即可,解压后内容如下
![]() |
![]() |

1.3 安装 SSL 证书
进入 cPanel 主页,在“安全”中找到“SSL/TLS”并进入,点击“生成、查看、上传或删除私钥”,进入后在上传新私钥中将我们刚才的“private.key”中的内容复制进去,点击“保存”
进入“生成、查看、上传或删除 SSL 证书”,再上传新证书中,先将“certificate.crt”的内容复制进去,然后将“ca_bundle.crt”的内容复制进去,点击保存证书
进入“管理 SSL 站点”,在域处点击我们的主域,然后点击“按域自动填充”,自动填充后,点击安装证书,即可安装成功!
![]() |
![]() |
注意:
- SSL 的网站有效期只有 90 天,过期后可以再次申请,重新安装即可
- 在安装完 SSL 证书后网站可能依旧显示错误,刷新下或者过一段时间就可以用
https://xx.com
检索网站啦
上述申请的方法只能申请三次了,之后就得花钱了,下面使用另一种方法
2. 使用 Let’s Encrypt 安装证书
此方法现在不 work 了,可以忽略
2.1 安装证书
首先下载 Let’s Encrypt 客户端 certbot
apt-get update
sudo apt-get install certbot
apt-get install python3-certbot-nginx
接下来申请证书,在终端中运行 Certbot,使用–nginx 标志指定您要配置 NGINX 服务器。Certbot 将自动检测 nginx,并提示您选择要启用 HTTPS 的域名。按照提示操作,完成证书申请过程。
执行以下命令
sudo certbot --nginx
(base) root@iZuf67mlx4ftb5vohxeobnZ:~# sudo certbot --nginx
Saving debug log to /var/log/letsencrypt/letsencrypt.log
...
Congratulations! You have successfully enabled https://wangyh.co
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=wangyh.co
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/wangyh.co/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/wangyh.co/privkey.pem
Your cert will expire on 2024-09-09.
...
证书申请成功:一旦证书申请成功,Certbot 将在/etc/letsencrypt/live/目录下为您的域名生成证书文件和私钥文件。
接下来修改 ngix 的文件 /etc/nginx/sites-available/default
,重点是在 wangyh.co
替换为自己的域名
server {
# others
server_name wangyh.co;
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/wangyh.co/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/wangyh.co/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
在重新加载 NGINX 配置之前,测试配置文件的语法是否正确,以避免出现错误,运行以下命令测试 NGINX 配置文件的语法。
(base) root@iZuf67mlx4ftb5vohxeobnZ:~# sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
重新加载配置:如果配置文件语法正确,使用以下命令重新加载 NGINX 配置,使更改生效。
sudo service nginx reload
2.2 卸载证书
卸载安装的证书
certbot delete
记得把 /etc/nginx/sites-available/default
添加的部分也删除掉,最后一行应该添加了一段自动从 http 导向 https 的语句,也记得删掉,然后重启 nginx
sudo service nginx reload
3. aliyun 申请证书安装在 nginx
本文由 Yonghui Wang 创作,采用
知识共享署名4.0
国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为:
Dec 19, 2024 12:13 pm