还在挑SSL证书?这三步实操下来,你马上就能自己装上小绿锁

你刚买好云服务器,正对着控制台发呆:下一步干啥?HTTPS还没开,浏览器一输网址就标“不安全”——这感觉,就像新家装修完,门锁还没装,心里总不踏实。

别急,我们这就一起把证书装上。全程不依赖客服、不抄冷门教程,只用你手边已有的工具和通用操作逻辑。

第一步:确认你当前环境支持HTTPS部署(必检)

装证书前,先确认你的服务已具备基础承载能力。这不是“能不能”,而是“有没有配对的接口”。以下检查项,你可在任意Linux云服务器上执行:

  1. 检查Web服务是否运行:systemctl is-active nginxsystemctl is-active apache2
  2. 确认80端口可访问:curl -I http://localhost,返回 HTTP/1.1 200 OK 即通过;
  3. 验证443端口是否开放(非必须监听,但需防火墙放行):sudo ufw status | grep 443(Ubuntu)或 sudo firewall-cmd --list-ports | grep 443(CentOS);
  4. 确认域名已正确解析到该服务器IP(可通过 dig +short yourdomain.com 验证);
  5. 确保你拥有该域名的DNS管理权限(后续DV验证需操作DNS记录)。

以上五项,缺一不可。任一失败,证书即使签发成功,也无法生效。

第二步:选择验证方式并完成域名所有权确认(DV流程实操)

DV(Domain Validation)是当前部署速度最快、兼容性最广的验证类型。它不验证企业身份,只确认“你是不是这个域名的主人”。我们以最通用的DNS验证为例:

  1. 登录你当前使用的域名服务商控制台(如DNSPod、Cloudflare、阿里云域名控制台等);
  2. 在DNS解析设置中,新增一条 TXT记录
  3. 主机名(Name/Host)填写 _acme-challenge(注意开头下划线);
  4. 记录值(Value/Content)粘贴CA提供的随机字符串(通常为43位base64编码);
  5. 保存后,执行 dig -t txt _acme-challenge.yourdomain.com +short,确认返回值与CA提供的一致;
  6. 等待DNS全球生效(通常2–10分钟,可用 dnschecker.org 多节点验证)。

⚠️ 注意:不要跳过DNS生效验证。很多“证书签发失败”实际是DNS未同步导致的CA校验超时。

第三步:使用Certbot自动化获取并部署证书(推荐方案)

Certbot是Let’s Encrypt官方维护的开源工具,支持主流Web服务自动配置。以下为Nginx环境下的标准流程(Apache用户可替换对应插件):

  1. 安装Certbot及Nginx插件:sudo apt install certbot python3-certbot-nginx(Ubuntu/Debian)或 sudo yum install certbot python3-certbot-nginx(CentOS/RHEL);
  2. 执行自动部署命令:sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
  3. 按提示选择是否强制HTTPS重定向(建议选 2: Redirect);
  4. 成功后,Certbot会自动更新Nginx配置,添加 ssl_certificatessl_certificate_key 指令;
  5. 验证配置语法:sudo nginx -t,再重载服务:sudo systemctl reload nginx

证书有效期为90天,Certbot默认已配置自动续期服务(systemctl list-timers | grep certbot 可查定时任务)。

不同证书类型的适用场景对比(基于公开技术规范)

验证类型 验证耗时 浏览器显示特征 适用典型场景 是否支持自动续期
DV(域名验证) 30分钟–2小时 地址栏显示锁形图标,点击无企业信息 个人博客、静态官网、测试环境、非交易型前端 是(Certbot/Lego等工具原生支持)
OV(组织验证) 1–3个工作日 锁形图标 + 点击可查看已验证企业名称与所在地 企业官网、用户登录页、SaaS产品首页、含表单提交的业务系统 否(需人工触发重签,部分商业平台提供API续期)
EV(扩展验证) 3–7个工作日 绿色企业名称栏(现代浏览器已逐步弱化显示) 金融类登录页、支付网关、高合规要求政务系统(需审计背书)

说明:DV证书在加密强度(如RSA 2048 / ECC 256)、协议支持(TLS 1.2+)、浏览器兼容性方面,与OV/EV完全一致。差异仅在于身份信任链的延伸层级。

证书文件结构与Nginx手动配置参考(备用方案)

若你使用非标准Web服务(如Caddy、Traefik)或需手动部署,需理解证书文件组成:

  • fullchain.pem:证书链文件(含站点证书 + 中间CA证书),Nginx中对应 ssl_certificate
  • privkey.pem:私钥文件,Nginx中对应 ssl_certificate_key
  • cert.pem:仅站点证书(不含链),一般不单独使用;
  • chain.pem:仅中间证书(不含站点证书),用于调试链完整性。

Nginx HTTPS server块最小可用配置示例:

server {
    listen 443 ssl http2;
    server_name yourdomain.com;
    ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
    location / {
        root /var/www/;
        index index.;
    }
}

常见问题解答(FAQ)

问题 解答
免费证书能用在生产环境吗? 可以。Let’s Encrypt等合规CA签发的DV证书符合RFC 5280标准,被所有主流浏览器信任。但需自行保障续期稳定性,不提供商业赔付与人工支持。
为什么我填了DNS记录,Certbot还是提示验证失败? 常见原因有三:DNS未全球生效(可用dnschecker.org验证)、TXT记录值含多余空格、主机名未加 _acme-challenge 前缀。建议用 dig -t txt _acme-challenge.yourdomain.com 直接比对返回值。
一个证书能保护多个子域名吗? 可以。申请时添加 -d api.yourdomain.com -d static.yourdomain.com 即可;若需通配符(如 .yourdomain.com),需使用DNS验证且部分CA要求ACME v2协议支持。
证书部署后,HTTP访问仍能打开,是没生效吗? 不是。HTTPS与HTTP是两个独立端口(80 vs 443)。需额外配置301重定向(Certbot交互中选“Redirect”即自动完成),或手动在80 server块中添加 return 301 https://$host$request_uri;
我用的是Windows服务器,流程一样吗? 核心逻辑一致:验证域名所有权 → 获取证书文件 → 配置Web服务绑定。Windows IIS用户可使用Win-Acme工具替代Certbot,操作界面化,但底层验证机制与Linux完全相同。

全文未引用任何促销价格、未绑定特定服务商、未承诺签发成功率——因为HTTPS部署的本质,是标准化协议与可复现操作的结合。你只需按步骤执行,每一步都有明确的验证反馈。证书不是“买来就用”,而是“配好即通”。现在,你已经拥有了完整的自主部署能力。

厂商 配置 适用 价格 购买地址
腾讯云 2核2G4M 低负载应用适配,全年稳定陪伴 99元/年 立即购买
腾讯云 2核4G5M 个人专享,超强性能加持 188元/年 立即购买
腾讯云 4核4G3M 建站、Web应用、电商独立站等高性价比选择 79元/年 立即购买
腾讯云 2核2G3M 适合小型网站、小程序和Web开发场景 68元/年 立即购买
腾讯云 2核4G6M 网站和小程序开发,快速部署、极简体验 528元/3年 立即购买
腾讯云 4核8G5M 适合业务规模较大的场景,中小企业首选 450元/年 立即购买

所有价格仅供参考,请以官方活动页实时价格为准。