Linux Nginx 怎么配置通配符泛域名 SSL 证书

小宇小哥_1334

小宇小哥_1334

2026-09-28

522人浏览

原创

必须先确认Nginx已启用--with-http_ssl_module模块(通过nginx -V检查),再正确申请含example.com和.example.com的通配符证书,最后在server块中配置listen 443 ssl、server_name example.com .example.com、ssl_certificate和ssl_certificate_key绝对路径,并设私钥权限600、属主为Nginx运行用户。

linux nginx 怎么配置通配符泛域名 ssl 证书

Linux 下用 Nginx 配置通配符(泛域名)SSL 证书,核心是两步:先正确申请带 *.example.com 的证书,再在 Nginx 中准确引用并启用 HTTPS。关键点不是“能不能配”,而是“每一步是否绕过常见坑”——比如 SSL 模块缺失、私钥权限错误、DNS 验证失败、或泛域名没覆盖主域名。

确认 Nginx 已启用 SSL 模块

这是所有配置的前提,跳过必报错:

  • 运行 nginx -V(注意大写 V),在输出的 configure arguments: 行里查找 --with-http_ssl_module
  • 没这个参数?说明编译时没开 SSL 支持,ssl_certificate 指令会被识别为非法指令,nginx -t 直接失败
  • 补救方法:回到原始源码目录,执行 ./configure --with-http_ssl_module [其他原有模块参数] && make,然后用 objs/nginx 替换 /usr/local/nginx/sbin/nginx(替换前先 nginx -s stop)

申请通配符证书(推荐 acme.sh + DNS 自动验证)

手动申请容易卡在 DNS 解析延迟或 TXT 记录清理不及时,acme.sh 配合阿里云 DNS 是最稳路径:

Linux Security Scanner
Linux Security Scanner

Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...

下载
  • 安装 acme.sh:curl https://get.acme.sh | sh && source ~/.bashrc
  • 注册账号:~/.acme.sh/acme.sh --register-account -m your@email.com
  • 配置阿里云 DNS 凭据(RAM 子账号需有 AliDNSFullAccess):
    export Ali_Key="xxx"
    export Ali_Secret="xxx"
    建议写入 ~/.bashrc 并 source 永久生效
  • 签发泛域名证书(必须包含主域名 + 通配符):
    ~/.acme.sh/acme.sh --issue --dns dns_ali -d example.com -d *.example.com --dnssleep 60
    注意:-d example.com 不能省——泛域名 *.example.com 不匹配 example.com 本身
  • 成功后证书路径如:/root/.acme.sh/example.com_ecc/fullchain.cer 和 example.com.key

Nginx 配置 HTTPS server 块(含泛域名支持)

证书放哪、怎么读、怎么写配置,三者缺一不可:

  • 把证书文件复制到明确路径,例如:/etc/nginx/ssl/example.com/,避免用 ~/.acme.sh 这类 root 专属路径(Nginx worker 进程通常无权访问)
  • 修复权限:
    chmod 644 /etc/nginx/ssl/example.com/fullchain.cer
    chmod 600 /etc/nginx/ssl/example.com/example.com.key
    私钥必须是 600,且属主为 Nginx 运行用户(CentOS 通常是 nginx:nginx,Ubuntu 是 www-data:www-data)
  • 在 nginx.conf 或站点 conf 文件中添加 server 块:
    server {<br>
        listen 443 ssl;<br>
        server_name example.com *.example.com;<br>
        ssl_certificate /etc/nginx/ssl/example.com/fullchain.cer;<br>
        ssl_certificate_key /etc/nginx/ssl/example.com/example.com.key;<br>
        # 其他 ssl_* 参数可选,但这两行必须存在且路径绝对准确<br>
      }
  • 同时建议加一个 80 端口重定向块,强制跳转 HTTPS:
    server {<br>
        listen 80;<br>
        server_name example.com *.example.com;<br>
        return 301 https://$host$request_uri;<br>
      }

验证与排错要点

配置完别急着 reload,按顺序检查:

  • 运行 nginx -t:确认语法无误,且能读取证书文件(若报 permission denied,90% 是私钥权限或属主不对)
  • 检查证书是否真含泛域名:
    openssl x509 -in /etc/nginx/ssl/example.com/fullchain.cer -noout -text | grep DNS
    输出应含 DNS:example.com, DNS:*.example.com
  • 确保系统防火墙(如 firewalld 或 ufw)放行 443 端口
  • 浏览器访问 https://sub.example.com 和 https://example.com 都应显示安全锁,无证书警告

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

980

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3412

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1116

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

1009

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

534

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

3136

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5932

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

907

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习