如何让一台服务器支持两个单域名SSL,怎么配置?

要让一台服务器支持两个独立的单域名SSL证书,最直接的方法是利用SNI(服务器名称指示)技术,在同一个IP和端口上部署多个域名各自的证书,每个域名独立配置,互不干扰。

一台服务器怎么配置两个单域名SSL证书(Nginx实战)

准备两个域名的证书文件

假设你拥有两个域名:example.com 和 test.com,且已分别申请到单域名SSL证书,证书文件通常包含一个PEM格式的证书链文件和一个私钥KEY文件,将它们上传至服务器,例如放在 /etc/nginx/ssl 目录下,并设置权限为600(仅root可读写),如果使用Let’s Encrypt证书,Certbot会自动将证书文件放置于 /etc/letsencrypt/live/ 目录下,配置时直接引用即可。

2、同一服务器部署多个网站|网站部署教程|Nginx|1Panel
加载中
2、同一服务器部署多个网站|网站部署教程|Nginx|1Panel

编写Nginx站点配置文件

编辑Nginx的站点配置文件(路径可能是 /etc/nginx/sites-available/ 或 /etc/nginx/conf.d/),为每个域名创建一个独立的server块,监听443端口并指定对应的证书路径。

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /etc/nginx/ssl/example.com.pem;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;
    root /var/www/example;
    index index.html;
}
server {
    listen 443 ssl;
    server_name test.com;
    ssl_certificate /etc/nginx/ssl/test.com.pem;
    ssl_certificate_key /etc/nginx/ssl/test.com.key;
    root /var/www/test;
    index index.html;
}

如果需要同时支持HTTP(80端口)自动跳转HTTPS,可以额外添加两个server块监听80端口,并返回301重定向。

使用默认server块提升安全性

建议添加一个默认server块,拒绝所有未绑定域名的HTTPS请求,防止证书泄露或攻击。

server {
    listen 443 ssl default_server;
    server_name _;
    ssl_certificate /etc/nginx/ssl/default.crt;
    ssl_certificate_key /etc/nginx/ssl/default.key;
    return 444;
}

这样,当请求的域名不在任何server_name列表中时,Nginx会直接关闭连接,不返回任何证书信息。

验证配置并重启

使用 nginx -t 检查配置文件语法,若显示 syntax is ok 和 test is successful

如何让一台服务器支持两个单域名SSL,怎么配置?

,则执行 systemctl reload nginx 或 nginx -s reload 平滑重启,通过浏览器访问两个域名,均应显示安全锁图标,也可以使用openssl命令验证证书是否匹配:

openssl s_client -connect example.com:443 -servername example.com
openssl s_client -connect test.com:443 -servername test.com

自动续期:Let’s Encrypt证书集成

如果使用免费证书,建议配置Certbot自动续期,运行 certbot --nginx 可自动识别并配置Nginx,生成的新证书会覆盖原有server块,对于多个独立的域名,可以分别运行certbot命令,或使用 -d 参数一次性申请但不能覆盖多个单域名证书(只能申请多域名证书),推荐单独为每个域名申请证书,即 certbot --nginx -d example.com 和 certbot --nginx -d test.com,这样每个域名获得独立的证书,便于后续管理。

常见踩坑记录

  • 防火墙未开放443端口:国内云服务器厂商如简米云、酷番云需要在安全组中手动添加443端口规则。
  • 证书文件权限错误:Nginx进程可能无法读取私钥,导致启动失败,确保私钥文件权限为600,且属主为root。
  • server_name不匹配:如果请求的域名不在server_name列表中,Nginx会使用默认server块,可能导致证书错误,建议设置一个默认server块返回444。
  • 证书链不完整:部分付费证书需配置中间证书,Nginx的ssl_certificate文件应包含完整链(站点证书+中间证书)。

单域名SSL证书部署方法对比:Apache与Nginx

Apache配置要点

Apache同样通过SNI支持多证书,配置方式与Nginx类似,但使用VirtualHost指令,首先确保加载了SSL模块(a2enmod ssl),然后编辑虚拟主机配置文件。

<VirtualHost :443>
    ServerName example.com
    DocumentRoot /var/www/example
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/example.com.crt
    SSLCertificateKeyFile /etc/apache2/ssl/example.com.key
    SSLCertificateChainFile /etc/apache2/ssl/example.com.chain.crt
</VirtualHost>
<VirtualHost :443>
    ServerName test.com
    DocumentRoot /var/www/test
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/test.com.crt
    SSLCertificateKeyFile /etc/apache2/ssl/test.com.key
    SSLCertificateChainFile /etc/apache2/ssl/test.com.chain.crt
</VirtualHost>

如何让一台服务器支持两个单域名SSL,怎么配置?

注意:Apache 2.2.12以上版本才支持SNI,且需要编译时启用SSL支持,在Ubuntu和Debian系统中,默认配置已满足要求,重启Apache后,使用 apache2ctl -S 查看虚拟主机配置是否正确。

Apache与Nginx在SNI上的差异

  • 性能:两者在SSL握手阶段的性能差距很小,Nginx在并发连接数上略有优势。
  • 配置风格:Nginx的server块更简洁,而Apache的VirtualHost配置需要多行指令,但同样清晰。
  • 模块依赖:Apache需要显式启用mod_ssl和mod_socache_shmcb,而Nginx的SSL支持通常编译在核心中。
  • 社区支持:两者均有大量用户,行业共识认为,对于绝大多数用户,选择熟悉的Web服务器即可,无需刻意更换。

同一服务器多个SSL证书场景:如何选择证书类型

单域名证书的优势

当两个域名完全独立,且属于不同业务或客户时,单域名证书是最佳选择,每个证书可以分别管理、续期,互不影响,安全隔离性更好,业内专家指出,单域名证书在多网站托管场景下更具灵活性,尤其适合为客户提供独立SSL证书的代理商,因为每个证书可以绑定不同域名,且撤销或更新不影响其他域名。

多域名证书的适用场景

多域名证书(SAN证书)允许一个证书保护多个域名,适合管理多个域名但希望统一证书维护的场景,你同时拥有a.com、b.com、c.com,且它们属于同一业务,使用多域名证书可以简化配置,但缺点是所有域名绑定在同一证书上,如果其中一个域名需要更换或撤销,整个证书必须重新签发,多域名证书价格通常按域名数量递增,对于2个域名来说,成本可能高于两个单域名证书。

通配符证书的限制

通配符证书只能保护一个域名及其所有子域名(如 .example.com),无法覆盖两个完全不同的顶级域名,通配符证书不适合example.com和test.com的场景。

成本与灵活性分析

如何让一台服务器支持两个单域名SSL,怎么配置?

证书类型 覆盖域名 管理灵活性 成本
单域名 一个域名 高,独立管理 低(免费可选)
多域名 多个域名 中,统一管理 中(按域名数)
通配符 一个主域名及子域名 低,无法跨主域名 高

综上,在“怎么让一台服务器支持2个单域名ssl”这个问题中,直接使用两个单域名证书是最经济、最灵活的做法。

常见问题:一台服务器配置多个SSL证书的疑问解答

问题1:一台服务器最多能配置几个单域名SSL证书?

理论上没有限制,取决于服务器内存和CPU资源,实际部署中,数百个证书也能稳定运行,但需注意证书管理工具的性能,建议使用自动化工具如Certbot批量管理,并定期检查证书有效期。

问题2:免费SSL证书支持多个域名独立部署吗?

支持,Let’s Encrypt免费证书本身是单域名证书,但你可以为每个域名单独申请,并在同一台服务器上通过SNI配置,据统计,大多数免费证书用户都采用这种方式实现多域名HTTPS,成本为零。

问题3:配置后浏览器提示证书错误,可能是什么原因?

常见原因包括:证书与域名不匹配(如使用了通配符证书但未覆盖二级域名)、证书链不完整、服务器时间不正确、或客户端不支持SNI(极少见),检查证书链和域名是否匹配,确保证书文件包含完整中间证书,如果使用自签名证书,则浏览器不会信任,需安装到受信任根证书列表。

通过SNI技术,在一台服务器上配置两个独立的单域名SSL证书简单高效,是目前主流且可靠的HTTPS部署方案。 无论是Nginx还是Apache,只需为每个域名创建独立的证书配置块,即可实现安全隔离与灵活管理,完全满足多业务或客户网站的加密需求,同时节省IP资源和证书成本,这种实践在国内外云服务器上均得到广泛验证,是运维人员的必备技能。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/%e5%a6%82%e4%bd%95%e8%ae%a9%e4%b8%80%e5%8f%b0%e6%9c%8d%e5%8a%a1%e5%99%a8%e6%94%af%e6%8c%81%e4%b8%a4%e4%b8%aa%e5%8d%95%e5%9f%9f%e5%90%8dssl%ef%bc%8c%e6%80%8e%e4%b9%88%e9%85%8d%e7%bd%ae%ef%bc%9f/

赞 (0)
DNF连不上服务器怎么办,游戏登录失败原因有哪些?
上一篇 2026年8月8日 02:25
服务器托管安全怎么保证,哪家比较可靠?
下一篇 2026年8月8日 02:32

相关推荐

  • ftp服务器怎么改密码?ftp服务器修改密码详细步骤

    为了帮助你解决问题,我将提供三种最常见场景的操作指南和界面示意描述,请根据你的实际环境选择对应的方法:使用 FileZilla Server(Windows 常见)这是个人或小企业最常用的 FTP 服务器软件,操作步骤:打开 FileZilla Server Interface(服务器管理界面),在左侧树状菜单……

    2026年7月11日
    3900
  • AIoT战略模式是什么?AIoT战略模式有哪些

    AIoT战略的核心在于通过“端-边-云”协同实现数据闭环,企业应从单纯的设备连接转向基于场景的智能决策,利用边缘计算降低延迟,依托云平台实现规模化赋能,从而构建具备自我进化能力的智能生态系统,在2026年的商业语境下,物联网早已不再是简单的“万物互联”,而是进化为“万物智联”,过去那种只关注硬件连接数、忽视数据……

    2026年6月13日
    3700
  • Excel快捷键怎么用?常用办公快捷键大全

    掌握Excel快捷键的核心在于建立“肌肉记忆”,将常用操作固化为本能反应,从而将数据处理效率提升数倍,彻底告别频繁切换鼠标的低效习惯,在日常办公场景中,鼠标点击往往成为效率的瓶颈,业内专家指出,频繁在键盘和鼠标之间切换视线与手部位置,不仅打断思维连贯性,更会显著增加完成复杂任务的时间成本,对于经常需要处理海量数……

    2026年7月4日
    16100
  • 福建AI开发者大赛怎么样,参加条件有哪些

    福建AI开发者大赛是福建省重点扶持的官方AI赛事,由省工业和信息化厅指导,旨在通过真实产业场景的命题模式,筛选出兼具技术深度和落地价值的项目,无论你是寻求创业孵化的团队负责人,还是希望拿奖镀金的个人开发者,这个赛事提供的资源对接与政策红利,都让它成为年度最值得投入的AI竞赛之一,福建AI开发者大赛值得参加吗?从……

    2026年7月14日
    1100
  • IBM x3650M4如何做RAID?,磁盘阵列怎么配置?

    IBM x3650 M4做RAID的核心答案是:开机自检时按Ctrl+H进入WebBIOS配置界面,用MegaRAID控制器创建阵列,全程无需操作系统参与,这台机器无论你是用它跑数据库还是做虚拟化,RAID都是绕不开的第一步,好在x3650 M4的RAID配置逻辑不算复杂,只要摸清几个关键界面和选项,即便不常碰……

    2026年8月26日
    800
  • 合肥共享带宽和独享带宽到底该怎么取舍,哪个好?

    合肥本地的企业或个人站长,如果预算敏感、业务以网页和轻量应用为主,选共享带宽更划算;如果业务涉及视频、下载、数据库交互或对延迟有硬性要求,独享带宽才是正确选项,这个结论不是拍脑袋,而是基于合肥机房的实际部署情况和大量本地企业的使用反馈得出的,合肥共享带宽和独享带宽的本质差异共享带宽是“合租”,独享带宽是“整租……

    2026年8月11日
    400
  • 如何优化ASP.NET MVC性能?开发技巧与实战指南

    ASP.NET MVC:构建结构化、可测试Web应用的成熟之道ASP.NET MVC是一种基于模型-视图-控制器(Model-View-Controller)设计模式的成熟Web应用程序开发框架,它为构建清晰分层、易于测试和维护的企业级应用提供了强大的基础设施,它通过职责分离,显著提升了代码的可管理性与可扩展性……

    2026年2月13日
    14700
  • 构造arp包linux,linux下如何构造arp包

    在Linux环境下构造ARP包,核心在于利用Scapy库或Raw Socket直接操控链路层帧,通过手动构建以太网头、ARP头并指定源/目标MAC与IP地址,实现ARP请求或响应的精准发送,ARP协议作为网络通信的基石,负责将IP地址解析为物理MAC地址,在网络安全测试、网络故障排查以及自动化运维场景中,掌握底……

    程序编程 2026年5月25日
    3900
  • VMISS新香港BGPV3节点8折21元/月值得买吗,VMISS香港BGPV3节点评测

    VMISS新上线的香港BGP多线节点支持CN2 GIA、9929及CMIN2等高品质线路,全场8折优惠后低至21元/月起,是追求低延迟与高稳定性的用户极具性价比的选择,在跨境网络服务领域,延迟和丢包率往往是用户最头疼的问题,传统的普通线路在晚间高峰时段容易出现拥堵,导致游戏卡顿或视频缓冲,VMISS此次推出的香……

    2026年6月29日
    3900
  • 传奇跨区战网关服压力怎么优化?,有哪些方法

    传奇跨区战卡顿延迟的根子,多数情况下不在服务器算力,而在于网关服的连接调度与协议解析效率,想解决跨区网关压力,核心思路就一句话:把连接管理和数据转发拆开做,用连接复用代替频繁建连,再把协议解析前置到网关层完成,网关服为什么总在跨区战里先扛不住跨区战和普通区服玩法有一个本质区别:流量模型完全不同,平时玩家只和本区……

    2026年9月6日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注