AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 566426
Accepted
user974407
user974407
Asked: 2014-01-11 10:17:33 +0800 CST2014-01-11 10:17:33 +0800 CST 2014-01-11 10:17:33 +0800 CST

每个子域都需要自己的 SSL 证书吗?

  • 772

我正在创建一个 websocket 服务器,它将在ws.mysite.example. 我希望 Web 套接字服务器进行 SSL 加密以及domain.exampleSSL 加密。我是否需要为我创建的每个子域购买新证书?我创建的每个子域都需要一个专用 IP 地址吗?我可能会有多个子域。

我正在使用在 Ubuntu 上运行的 NGINX 和 Gunicorn。

ssl
  • 4 4 个回答
  • 202935 Views

4 个回答

  • Voted
  1. Best Answer
    pkeenan
    2014-01-11T10:36:51+08:002014-01-11T10:36:51+08:00

    我将分两步回答这个问题......

    您是否需要为每个子域提供 SSL 证书?

    是和否,这取决于。您的标准 SSL 证书将用于单个域,例如www.domain.example. 除了标准的单域证书之外,您还可以使用不同类型的证书:通配符和多域证书。

    • 将为类似的东西颁发通配符证书*.domain.example,客户端会将其视为对任何以 结尾的域有效domain.example,例如www.domain.exampleor ws.domain.example。

    • 多域证书对预定义的域名列表有效。它通过使用证书的主题备用名称字段来完成此操作。例如,您可以告诉 CA 您想要domain.example和的多域证书ws.mysite.example。这将允许它用于两个域名。

    如果这些选项都不适合您,那么您需要拥有两个不同的 SSL 证书。

    每个子域都需要一个专用 IP 吗?

    同样,这是一个是与否……这完全取决于您的 Web/应用程序服务器。我是一个 Windows 人,所以我会用 IIS 示例来回答。

    • 如果您运行的是 IIS7 或更早版本,那么您将被迫将 SSL 证书绑定到一个 IP,并且您不能将多个证书分配给一个 IP。如果您为每个子域使用专用 SSL 证书,这将导致您需要为每个子域使用不同的 IP。如果您使用的是多域证书或通配符证书,那么您可以使用单个 IP,因为您一开始只有一个 SSL 证书。

    • 如果您运行的是 IIS8 或更高版本,则同样适用。但是,IIS8+ 包括对称为服务器名称指示 (SNI) 的支持。SNI 允许您将 SSL 证书绑定到主机名,而不是 IP。因此,用于发出请求的主机名(服务器名称)用于指示 IIS 应该为请求使用哪个 SSL 证书。

    • 如果您使用单个 IP,那么您可以配置网站以响应对特定主机名的请求。

    我知道 Apache 和 Tomcat 也支持 SNI,但我对它们还不够熟悉,不知道哪些版本支持它。

    底线

    根据您的应用程序/Web 服务器以及您能够获得的 SSL 证书类型将决定您的选择。

    • 94
  2. GomoX
    2014-01-11T10:31:02+08:002014-01-11T10:31:02+08:00

    您可以获得每个子域的证书、多个子域的证书或通配符证书(用于*.yoursite.example)。

    不过,它们通常比普通证书贵很多,而且因为您共享一个证书,所以从安全的角度来看,它们通常不是最佳选择,除非您托管一种anything.mydomain.example应用程序,而它们是唯一可行的选择。

    如果您有支持 SNI 的 Web 服务器,您也不需要多个 IP 地址。这就是说,SNI 仅在现代浏览器中受支持(IE6 及更低版本无法使用它)。最新版本的 Nginx 和 Apache 透明地支持 SNI(只需添加启用 SSL 的虚拟主机)。

    • 12
  3. Thomas Chung
    2021-06-25T10:05:08+08:002021-06-25T10:05:08+08:00

    我建议“ getssl ”为托管在另一台服务器上的子域创建 SSL 证书。

    Let't say: 
    You have a primary domain (example.com) with SSL Cert on SERVER A. 
    You have a subdomain (vm1.example.com) without SSL Cert on SERVER B.
    

    您可以使用“ getssl ”为使用letsencrypt.org的子域创建SSL证书

    • 2
  4. Jim G.
    2014-01-11T10:33:02+08:002014-01-11T10:33:02+08:00

    您需要为每个子域提供单独的证书,或者您可以购买通配符证书*.domain.example(

    关于 IP,这取决于您如何设置服务器。您可以使用主机名规则从同一个 IP 为多个站点提供服务,或者为每个站点使用唯一的 IP。两种方法各有利弊。

    • 1

相关问题

  • 如何使用 Tomcat 5.5 更新 SSL 证书

  • 为 IIS6 自行生成 SSL 证书?

  • plesk 上的域和子域 ssl 访问

  • 如何设置 SSL 邮件服务器?

  • 如何通过 SVN 命令行接受 SSL 证书?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve