news 2026/1/29 1:44:14

5分钟搞定HTTPS!Certbot免费SSL证书配置全指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
5分钟搞定HTTPS!Certbot免费SSL证书配置全指南

5分钟搞定HTTPS!Certbot免费SSL证书配置全指南

有没有遇到过这样的情况:自己搭建的网站打开后,浏览器地址栏显示“不安全”,访客一看就不敢继续浏览;或者做小程序开发时,要求后端接口必须是HTTPS协议,卡在这里迟迟推进不了?

其实解决这个问题很简单,只需要一个SSL证书就行。今天就给大家分享一个免费又好用的工具——Certbot,手把手教你从安装到配置,5分钟搞定HTTPS,让你的网站安全又专业!

一、先搞懂:Certbot是什么?

Certbot 是一款由电子前哨基金会(EFF)开发的免费开源工具,专门用于自动获取、安装和续期 Let’s Encrypt 提供的免费SSL证书。

重点划一下:

  • 免费:全程零成本,不用花一分钱买证书

  • 自动:证书申请、安装、续期全自动化,不用手动操作

  • 通用:支持Nginx、Apache等主流服务器,兼容性拉满

小知识:Let’s Encrypt 是一个公益性质的证书颁发机构(CA),目的是推动整个互联网都使用HTTPS,让网络更安全~

二、准备工作:3个前提要满足

在开始之前,先确认你已经做好了这些准备,避免中途卡壳:

  1. 拥有一台云服务器(比如阿里云、腾讯云、华为云等),系统推荐CentOS、Ubuntu(本文以Ubuntu为例)

  2. 已经购买了域名,并且将域名解析到了你的服务器IP(解析后可以用ping命令测试是否生效)

  3. 服务器上已经安装了Web服务器(Nginx或Apache,本文以Nginx为例)

如果还没安装Nginx,参考往期:Linux系统安装Nginx超详细教程!

三、实操步骤:从安装到配置,一步到位

步骤1:安装Certbot

Ubuntu系统直接执行以下命令安装Certbot和Nginx插件(插件用于自动配置Nginx):

#更新软件源sudoaptupdate#安装certbotsudoaptinstall-y certbot#安装 Certbot 及 Nginx 插件sudoaptinstall-y python3-certbot-nginx

安装完成后,输入certbot --version,如果能显示版本号,说明安装成功啦!

步骤2:申请并自动配置SSL证书

这是最核心的一步,只需要一条命令就能搞定,跟着做就行:

sudocertbot --nginx -d 你的域名

比如你的域名是example.com,就输入:

sudocertbot --nginx -d example.com

如果想给www和非www版本都配置证书,可以这样写:

sudocertbot --nginx -d example.com -d www.example.com

执行命令后,会出现几个交互步骤,一步步选就行:

  1. 输入邮箱:用于接收证书到期提醒(一定要填正确,避免证书过期忘记续期)

  2. 同意服务条款:输入A并回车

  3. 是否共享邮箱:输入N并回车(不想接收EFF的邮件就选N)

  4. 确认域名:如果显示的域名正确,直接回车即可

  5. 选择HTTP跳转HTTPS:输入2并回车(这样访问HTTP会自动跳转到HTTPS,更安全)

当屏幕显示“Successfully obtained certificate”时,就说明证书申请成功,并且已经自动配置到Nginx里了!

步骤3:验证是否生效

打开浏览器,在地址栏输入你的域名(注意要加https://),比如https://example.com

如果地址栏出现小绿锁,就说明HTTPS配置成功啦!🎉

如果没出现绿锁,大概率是服务器防火墙没开放443端口(HTTPS默认端口),去你的云服务器控制台,在安全组里放行443端口即可。

步骤4:设置自动续期(关键!避免证书过期)

Let’s Encrypt的证书有效期只有90天,不过Certbot可以自动续期,我们只需要设置一个定时任务就行。

执行以下命令,添加定时任务:

sudocrontab-e

如果是第一次打开,会让你选择编辑器,输入2(用nano编辑器)并回车。

在文件末尾添加一行内容:

001* *sudocertbot renew --quiet

添加完成后,按Ctrl+O保存,再按Ctrl+X退出。

这个定时任务的意思是:每月1号的0点0分,自动执行续期命令,–quiet参数表示静默执行,不会输出多余信息。

可以执行sudo certbot renew --dry-run测试一下续期是否正常,如果显示“Congratulations, all simulated renewals succeeded.”,说明定时任务没问题~

四、常见问题:遇到这些问题不用慌

1. “E: 无法定位软件包 python3-certbot-nginx” 无法安装插件问题

原因:说明你的系统软件源里没有 Certbot Nginx 插件的包,需要先配置正确的软件源。

解决:执行以下命令一步步配置正确的源(适用于 Debian 10+/Ubuntu 18.04+)

# 安装必要的依赖包sudoaptupdatesudoaptinstall-y software-properties-common# 添加 Certbot 官方 PPA 源(Ubuntu 系统)sudoadd-apt-repository ppa:certbot/certbot -y# 如果是 Debian 系统(非 Ubuntu),执行以下命令替代上面的 add-apt-repository:# wget https://dl.eff.org/certbot-auto# chmod a+x certbot-auto# sudo mv certbot-auto /usr/local/bin/# 更新软件源(添加 PPA 后必须执行)sudoaptupdate# 安装 Certbot 及 Nginx 插件sudoaptinstall-y certbot python3-certbot-nginx# 检查已安装的插件certbot plugins

如果输出中能看到 nginx 插件(如下),说明安装成功:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * nginx Description: Nginx Web Server plugin Interfaces: Installer, Authenticator, Plugin Entry point: nginx=certbot_nginx.configurator:NginxConfigurator

2. 执行申请命令时,提示“Could not find a virtual host listening on port 80”

原因:Nginx没有配置对应域名的虚拟主机。

解决:先在Nginx的sites-available目录下创建虚拟主机配置文件,比如:

sudonano/etc/nginx/sites-available/example.com

添加以下内容(替换成你的域名):

server { listen 80; server_name example.com; location /{ root /var/www/html; index index.html index.htm; } }

然后创建软链接并重启Nginx:

sudoln-s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/sudonginx -t# 测试配置是否正确sudosystemctl restart nginx

3. 浏览器显示“证书无效”

原因:域名解析没生效,或者证书申请时域名填错了。

解决:先确认域名解析是否正确(ping域名看是否指向服务器IP),再检查申请命令里的域名是否和解析的一致。

4. 续期失败

原因:定时任务没设置对,或者服务器时间不对。

解决:重新检查定时任务配置,或者手动执行sudo certbot renew续期。如果是时间问题,执行sudo timedatectl set-ntp true同步时间。

五、总结

用Certbot配置HTTPS其实很简单,核心就3步:安装Certbot → 一条命令申请配置证书 → 设置自动续期。全程不用懂复杂的SSL原理,新手也能轻松搞定。

有了HTTPS,你的网站不仅更安全,还能提升访客信任度,做小程序、公众号开发也不会被HTTPS协议卡住啦!

如果操作过程中遇到问题,欢迎在评论区留言,我会尽力帮大家解答~

最后,别忘了关注、收藏、点赞、转发四连,给我一点创作动力呀!❤️

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/26 4:32:38

基于springboot + vue在线教育学习系统(源码+数据库+文档)

在线教育学习 目录 基于springboot vue在线教育学习系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue在线教育学习系统 一、前言 博主介绍&…

作者头像 李华
网站建设 2026/1/17 23:24:22

Transformers连续批处理:3步让GPU利用率飙升300%的入门指南

Transformers连续批处理:3步让GPU利用率飙升300%的入门指南 【免费下载链接】transformers huggingface/transformers: 是一个基于 Python 的自然语言处理库,它使用了 PostgreSQL 数据库存储数据。适合用于自然语言处理任务的开发和实现,特别…

作者头像 李华
网站建设 2025/12/14 10:23:14

Alita:为移动端量身打造的终极React框架解决方案

Alita:为移动端量身打造的终极React框架解决方案 【免费下载链接】alita A React framework based on umi. 项目地址: https://gitcode.com/gh_mirrors/ali/alita 在当今移动优先的时代,开发高性能的移动应用已成为前端开发者的核心需求。Alita作…

作者头像 李华
网站建设 2026/1/27 19:32:52

解锁群晖照片AI识别:让老设备焕发新活力的完美补丁

解锁群晖照片AI识别:让老设备焕发新活力的完美补丁 【免费下载链接】Synology_Photos_Face_Patch Synology Photos Facial Recognition Patch 项目地址: https://gitcode.com/gh_mirrors/sy/Synology_Photos_Face_Patch 你是否曾经对着DS918等性价比神机叹气…

作者头像 李华
网站建设 2026/1/28 3:25:44

TradingAgents-CN智能交易系统:多智能体协作的AI金融决策引擎

TradingAgents-CN是一套基于多智能体大语言模型构建的中文金融交易决策框架,通过模拟专业投资机构的完整工作流程,为投资者提供从数据收集到交易执行的全链路AI解决方案。该系统将复杂的金融分析任务分解为多个专业智能体角色,实现了人机协同…

作者头像 李华
网站建设 2026/1/17 18:37:10

电商系统中Oracle EXISTS的5个实战应用场景

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个电商数据分析演示项目,包含以下EXISTS应用场景:1. 查找有未支付订单的VIP客户;2. 识别库存中从未被购买的商品;3. 筛选同时购…

作者头像 李华