嵌入式设备的Https,本地地址


8

我正在尝试将https添加到正在使用的嵌入式设备中。这些设备通常分配有本地ip地址,因此无法获得自己的SSL证书。

所以本质上我的问题是,如何获得没有全局IP地址的设备的证书?

假设:

除非经过受信任的CA验证,否则浏览器将不信任证书。

但是,您只能获得全球唯一域的经过验证的证书。

那些笨拙的客户坚持使用本地IP地址。

类似的问题在这里


假设A:

  1. 获得公司主要网站的证书
  2. 复制该证书。+所有设备的私钥
  3. 用户连接到设备
  4. 设备发送证书。给用户
  5. 用户看到证书。是受信任的(忽略它不适合此服务器吗?)
  6. 用户使用cert中的公钥加密http
  7. 设备使用私钥

结果:

  1. 浏览器抱怨名称不匹配
  2. 客户可以访问彼此的私钥
  3. 不太安全

假设B:

  1. 获取公司主要网站的证书,用于每个设备
  2. 复制证书。+每个设备的私钥
  3. 用户连接到设备
  4. 设备发送证书。给用户
  5. 用户看到证书。是受信任的(忽略它不适合此服务器吗?)
  6. 用户使用cert中的公钥加密http
  7. 设备使用私钥

结果:

  1. 浏览器抱怨名称不匹配
  2. 安全

假设C:

  1. 为每个设备创建自签名证书
  2. 复制证书。+设备的私钥
  3. 用户连接到设备
  4. 设备发送证书。给用户
  5. Firefox有一个金丝雀
  6. 用户使用cert中的公钥加密http
  7. 设备使用私钥

结果:

  1. 浏览器抱怨自签名证书
  2. 自签名证书可能是中间人攻击

目前尚不清楚您要解决的问题是什么。您能否在所有选项之前更新问题以包含问题说明?
larsk 2012年

Answers:


3

如果客户坚持使用本地IP连接,那么您甚至不需要与“已知的” 证书颁发机构联系就可以利用全球公钥基础结构

只需使用自己的本地CA设置您自己的本地PKI,然后将您的CA证书分发给所有客户端。然后使用该CA向设备颁发证书,客户端将信任它们。


您可以通过Windows Active Directory免费获得此证书:使用AD证书颁发机构创建的证书是使用域CA证书创建的,因此在该域中使用Internet Explorer的所有用户已经具有内置的有效证书链。
longneck 2012年

1
好的,我认为我将附带自签名证书,但其中包含一项功能,允许具有自己的CA的客户上载自己的CA。我将向他们发送证书序列号,并鼓励他们在收到浏览器警告时进行验证(很少有人会使用每台设备)。虽然不完美,但这只是一个开始
Shiftee

0

是否可以选择使用通配符证书并将其用作设备的子域?

只要您的设备在本地DNS上,IP地址就无关紧要。


好吧,这些设备实际上与主域没有任何关系。在大多数情况下,设备将位于客户专用局域网上。我想要该证书,以便用户可以知道他们正在与具有与我公司相关联的私钥的设备进行通信。抱歉,如果我完全错过了您的观点
Shiftee,2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.