为IP签发SSL证书

栏目: 编程工具 · 发布时间: 5年前

内容简介:转载请注明文章出处:昨天写

转载请注明文章出处: https://tlanyan.me/get-ssl-ce...

问题

昨天写 "公共DNS服务器整理" 一文整理素材时,访问 Cloudflare 公共DNS服务的官网,发现网站竟然是“ https://1.1.1.1 ”!

为IP签发SSL证书

恕我孤陋寡闻,这是生平第一次见到以"https"方式访问公网IP(当然CF DNS的另一个IP也是以https方式访问:" https://1.0.0.1 ")。用多款浏览器测试,均认为这是一个合法的请求地址。查看证书,是由DigiCert签发的合法证书:

为IP签发SSL证书

可以明确以下事实:

1.1.1.1
.1
1.1.1.1

总结起来一句话:能给IP颁发合法SSL证书?

解答

在superuser网站上,有类似的疑惑: Why does my browser think that https://1.1.1.1 is secure?。根据网友答案, 可以给公网IP颁发证书,但罕见

确认可以为IP签发证书,继续查资料,找到如下信息:

  1. 能签发证书的IP只能是 公网IP
  2. 只能签发OV证书 ;要 验证企业名称合法性 ,以及根据whois信息 验证对IP的所有权

根据第二条, 个人不能为IP申请证书 ;如果没有IP所有权,企业或机构从云厂商获取到的IP也不能申请证书,因为有使用权但没有所有权。域名比IP(相对)更容易获取,并且一个域名可以对应多个IP,故而极少有为IP申请证书的情况。

测试

弄清楚其中道理,接下来验证一下与理论是否相符。

Let's Encrypt

先请出免费获取证书的 Let's Encryptcertbot 工具,尝试为IP颁发证书,输出如下:

[root@xxxx ~]# certbot certonly --standalone -d xxx.xxx.xxx.xxx
Requested name xxx.xxx.xxx.xxx is an IP address. The Let's Encrypt certificate authority will not issue certificates for a bare IP address.

结论:Let's Encrypt不能为IP签发证书!

DigiCert

接着尝试从证书颁发机构获取。在 DigiCert 的订单页面,主机名一栏对输入数据的反馈如下:

  1. 公网IP

    为IP签发SSL证书

    结论:公网IP可以获取SSL证书!

  2. 内网IP

    为IP签发SSL证书

    结论:不能为内网IP签发SSL证书!

  3. 域名

    为IP签发SSL证书

    结论:毫无疑问是没问题的

测试结果与理论相符(付款及后续步骤没验证)。

参考

  1. superuser: Why does my browser think that https://1.1.1.1 is secure?
  2. LeaderSSL: Issuing SSL certificate for an IP address
  3. DV型、OV型、EV型证书的主要区别

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java核心技术及面试指南

Java核心技术及面试指南

金华、胡书敏、周国华、吴倍敏 / 北京大学出版社 / 2018-9-1 / 59.00

本书根据大多数软件公司对高级开发的普遍标准,为在Java 方面零基础和开发经验在3 年以下的初级程序员提供了升级到高级工程师的路径,并以项目开发和面试为导向,精准地讲述升级必备的技能要点。具体来讲,本书围绕项目常用技术点,重新梳理了基本语法点、面向对象思想、集合对象、异常处理、数据库操作、JDBC、IO 操作、反射和多线程等知识点。 此外,本书还提到了对项目开发很有帮助的“设计模式”和“虚拟......一起来看看 《Java核心技术及面试指南》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具