# 一、https协议【SSL证书】说明
搭建https协议的网站,需要申请SSL证书证书,申请证书有两种方式:
# 1. 付费证书(花钱买)
- 付费证书很容易理解,就是花钱买证书,以阿里云为例,阿里云的付费证书有:DV、OV、EV三种,其中EV证书是最高级别的,价格也最高,一般企业才会申请EV证书,个人网站申请DV证书即可,OV证书介于两者之间,价格也介于两者之间(可去阿里云看价格),如果你不缺钱可以用这个;(
【重要】根据CA/B最新的投票结果,自2026年03月15日起,证书签发有效期将计划缩短至200天;) - 到期后(
一年,2026年03月15日起,缩短至200天)再去申请,等签发(半个小时),再到服务器去更换;
- 到期后(
# 2. 免费证书(不想花钱)
# 2.1 阿里云提供的免费证书
- 一年20个,每3个月到期一个【也就是一个域名(一个网站一年要用4个证书,最多可以给5个网站使用)】,到期之后,需要重新申请签发,等签发(半个小时),再到服务器去更换;
# 2.2 通过技术手段,自动申请免费证书(永远过期)
- 自动部署证书,默认90天,到期后,会自动续签,不需要人工干预;
# 二、自动化部署流程
我们采用 ALLinSSL开源免费的SSL证书自动化管理平台部署SSL证书, 官方网站:https://allinssl.com/ (opens new window)
具体查看视频, 自动化部署流程视频查看[B站]
# 1. 系统及准备工作
- 操作系统: Linux (推荐 CentOS 7.x,Ubuntu 18.04+,Debian 9+) / Windows / MacOS
- 硬件要求: 至少1核CUP, 512M内存, 1G磁盘空间
- 域名: 在阿里云或者腾讯云购买了一个域名 (目前
ALLinSSL仅支持阿里云和腾讯云的域名,后续其他云服务商会陆续支持)- 网络: 需要链接网络下载依赖和申请证书
# 2. 关于宝塔面板安装及配置网站或者系统
关于宝塔面板安装及配置网站或者系统上线,如果有不会的同学,可以直接去看我们第二学期第四季的课程:
# 3. 部署SSL证书
# 1. 复制安装命令
来到 ALLinSSL官网 https://allinssl.com/ (opens new window),快速上手 https://allinssl.com/guide/getting-started.html (opens new window) 找到 安装 -> 使用二进制安装命令 (推荐) -> 复制安装命令
curl -sSO http://download.allinssl.com/install_allinssl.sh && bash install_allinssl.sh allinssl
# 2. 安装及登录 ALLinSSL
方式一:
可直接在
宝塔面板->Docker->应用商店->应用搜索->allinssl,然后安装->确定(大约需要2-3分钟,等待安装即可,成功后点击详情-> 复制web端口-> 然后在浏览器输入:宝塔面板网址+刚刚复制的web端口就可以在服务器打开ALLinSSL管理平台,然后输入详情里面展示的用户名和密码就可以登录ALLinSSL平台)
方式二:
如果宝塔面板
Docker中搜索不到ALLinSSL,或者不是用宝塔面板部署的网站或者系统, 则在服务器上安装allinssl:
常用的服务器是阿里云腾讯云, 我们以阿里云服务器为例
- 来到阿里云控制台,找到服务器控制台(ECS或者轻量应用服务器) ->
远程连接(关于远程连接,在第二学期第四季的课程都详解讲过了)- 粘贴命令:
鼠标右键->粘贴->粘贴->回车-> 提示的时候,输入y-> 然后等待它安装,安装完成后,会告诉你ALLinSSL的访问地址,账户名和密码(当然你可以拿记事本记一下下次用),然后根据ALLinSSL的访问地址,账户名和密码登录ALLinSSL平台- [重点]
授权API管理
- 重点说一下:
授权API管理
第一次
添加授权API,主要是授权DNS供应商:
- 名称: 随便填,比如
AllInSSL- 类型:
阿里云(如果你的域名是腾讯云购买的,则选择腾讯云)当然后续ALLinSSL也会提供更多服务商AccessKeyId 和 AccessKeySecret;
- 如果你的域名是
腾讯云购买的,则来到腾讯云控制台搜索访问管理->API密钥管理->新建密钥->复制ScretId和ScretKey到这里即可- 如果你的域名是
阿里云购买:来到阿里云密钥管理页面https://ram.console.aliyun.com/profile/access-keys (opens new window) , 但是建议使用RAM用户AccessKey,不建议使用云账号 AccessKey
- 创建用户
- 登录名称: 随便填,比如:
AllInSSL- 访问方式: 选择
使用永久 AccessKey 访问, 然后确定, 然后 把AccessKey ID和AccessKey Secret复制保存到记事本并填写到ALLinSSL的授权API管理里面
- 给创建的用户授权
添加权限->权限策略搜索dns, 把搜索结果全部勾选上,然后确认新增权限第二次
添加授权API,主要是配置需要部署证书的服务器 :
- 名称: 随便填,比如
AllInSSL- 类型:
宝塔面板- 面板URL:
- 来到宝塔面板->
面板设置->API接口(API接口配置)
- API接口: 打开
- 接口密钥: 复制一下
- IP白名单(每行一个): 127.0.0.1
- 保存 最后面板URL:
https://127.0.0.1:面板端口/
- API密钥:刚才复制的接口密钥
- 忽略 SSL/TLS证书错误: 可打开
- 来到
AllInSSL自动化部署
新增自动化部署->新建工作流->快速部署模版申请证书:
- 域名:填写你要部署的https服务的域名,如:
www.51yrc.com, 多个用逗号隔开51yrc.com,*.51yrc.com,lesson06wap.51yrc.com,lesson06.51yrc.com- 邮箱:填写你的邮箱,用于接收通知
- DNS提供商 :
阿里云(如果你的域名是腾讯云购买的,则选择腾讯云)- 续签间隔(天) :默认30天
部署->宝塔面板网站
- 主机提供商:
宝塔面板AllinSSL- 证书来源:
申请证书- 站点名称:
你的网站名称
通知任务可删除保存执行查看执行历史
# 三、自动化部署流程视频查看
具体查看视频, 自动化部署流程视频查看
# 四、关于AllInSSL无法访问的解决方案
如果一段时间之后,无法访问
AllInSSL,可能是AllinSSL服务当前没有运行,按照如下步骤解决:
# 1. 确认服务是否运行
ps aux | grep allinssl返回类似:
root 5264 0.0 0.1 6332 2016 pts/0 S+ 17:42 0:00 grep allinssl说明:
AllinSSL服务当前没有运行,这里只有 grep allinssl 进程(即你刚执行的查询命令),没有真正的 AllinSSL 服务进程。这表明服务已停止运行。
# 2. 重启 AllinSSL 服务
进入安装目录
cd /www/allinssl启动服务
./allinssl start检查是否启动成功
./allinssl status