当前位置:首页 > Ubuntu > 正文

Ubuntu SSL证书配置指南(手把手教你为Nginx网站启用HTTPS安全连接)

在当今互联网环境中,Ubuntu SSL证书配置已成为保障网站安全、提升用户信任度的必备操作。无论是个人博客还是企业官网,启用 HTTPS 不仅能加密数据传输,还能提高搜索引擎排名。本教程将详细讲解如何在 Ubuntu 系统上使用免费的 Let's Encrypt 证书为 Nginx 网站配置 HTTPS,即使你是 Linux 小白也能轻松上手。

准备工作

在开始之前,请确保你已满足以下条件:

  • 一台运行 Ubuntu 20.04/22.04 的服务器
  • 已安装 Nginx Web 服务器
  • 拥有一个指向该服务器的域名(如 example.com)
  • 具备 sudo 权限的用户账户
Ubuntu SSL证书配置指南(手把手教你为Nginx网站启用HTTPS安全连接) SSL证书配置  Let's Encrypt免费SSL Nginx HTTPS配置 Ubuntu服务器安全 第1张

第1步:更新系统并安装 Certbot

Certbot 是 Let's Encrypt 官方推荐的客户端工具,用于自动申请和续期 SSL 证书。首先更新系统包列表并安装 Certbot 及其 Nginx 插件:

sudo apt updatesudo apt install certbot python3-certbot-nginx -y

第2步:配置 Nginx 服务器块

确保你的 Nginx 配置中包含正确的 server_name 指令。编辑你的站点配置文件(通常位于 /etc/nginx/sites-available/ 目录下):

sudo nano /etc/nginx/sites-available/your_domain

确保配置中包含如下内容(将 your_domain 替换为你的实际域名):

server {    listen 80;    listen [::]:80;    root /var/www/your_domain;    index index.html index.htm index.nginx-debian.html;    server_name your_domain www.your_domain;    location / {        try_files $uri $uri/ =404;    }}

保存并退出后,测试 Nginx 配置是否正确:

sudo nginx -t

如果显示 "syntax is ok" 和 "test is successful",则说明配置无误。接着重新加载 Nginx:

sudo systemctl reload nginx

第3步:使用 Certbot 获取并安装 SSL 证书

运行以下命令,Certbot 会自动为你的域名申请证书并修改 Nginx 配置以启用 HTTPS:

sudo certbot --nginx -d your_domain -d www.your_domain

执行过程中,系统会提示你输入邮箱地址(用于紧急通知和密钥恢复),并同意 Let's Encrypt 的服务条款。完成后,Certbot 会自动修改 Nginx 配置,添加 SSL 相关指令,并设置自动跳转 HTTP 到 HTTPS。

第4步:验证 HTTPS 是否生效

打开浏览器,访问 https://your_domain。如果看到绿色的小锁图标,说明 Let's Encrypt免费SSL 已成功部署!你也可以使用在线工具如 SSL Labs 测试证书配置质量。

第5步:设置自动续期(重要!)

Let's Encrypt 证书有效期为 90 天,但 Certbot 默认已配置了自动续期任务。你可以手动测试续期功能是否正常:

sudo certbot renew --dry-run

如果输出中没有错误,说明自动续期已配置成功。系统会通过 cron 或 systemd 定时任务每天检查并自动续期即将过期的证书。

常见问题与安全建议

完成 Nginx HTTPS配置 后,建议采取以下措施增强 Ubuntu服务器安全

  • 定期更新系统:sudo apt upgrade -y
  • 配置防火墙(UFW)只开放必要端口(80、443、22)
  • 禁用旧版 TLS 协议(如 TLS 1.0/1.1),仅使用 TLS 1.2+(Certbot 默认已优化)
  • 定期检查证书状态:sudo certbot certificates

总结

通过本教程,你已经成功完成了 Ubuntu SSL证书配置,为网站启用了安全的 HTTPS 连接。这不仅保护了用户数据,也提升了网站的专业形象和 SEO 表现。Let's Encrypt 提供的免费证书是目前最主流、最便捷的解决方案,配合 Certbot 的自动化能力,大大降低了运维成本。

如果你在配置过程中遇到任何问题,欢迎在评论区留言交流!