2017-05-29 46 views
1

我们在运行IIS7 php webapp的本地业务网络上有一台服务器,该服务器通过公共域http://ourinternalnetwork/向整个建筑物内的其他客户机提供服务。我只是想知道是否有人知道如何通过Chrome访问https://ourinternalnetwork/的客户端计算机上安装自签名证书而没有任何警告消息。在没有任何警告消息的情况下为专用网络创建SSL证书

如果能解决这个问题,我们可以手动更改每台客户端机器?但仅仅是以特定的方式在服务器上安装它的情况?

提前致谢!

回答

1

要避免自签名证书的警告,您将不得不要求您的客户“安装证书”。根据用户使用的操作系统,他们将不得不做不同的事情。

此外,因为铬58你需要确保服务器的证书包含正确的DNS和/或IP进入/条目的SubjectAltName,哪怕它只是一台主机。

的Mac OS X

由于浏览器不显示证书选项旁边的网址了,你的用户将不得不打开开发者工具(选件+指令+ I),然后转到“安全“ 标签。然后单击“查看证书”,然后拖动证书图像并将其放到任何文件夹中。

接下来,双击已保存的cer文件,钥匙串访问将打开。

选择一个钥匙串来存储它,然后点击“始终信任”。

如果没有问您要保存的位置或者您应该信任它,请找到新添加的证书(它应该位于列表的顶部),右键单击它,选择“获取信息”,然后在“使用此证书时”的“信任”选项卡中选择“始终信任”。

你可以用这样的脚本自动完成:

sudo security add-trusted-cert -p ssl -d -r trustRoot -k ~/Library/Keychains/login.keychain selfsigned.crt 

的Windows

按照相同的步骤,在OS X上下载证书,然后单击开始并运行命令certmgr.msc

展开树以获取受信任的根证书颁发机构|证书。转至所有任务,选择导入并导入相关证书。

+0

谢谢,这真的很有帮助,似乎工作!谢谢! – Sean

2

在Windows上,你可以编写脚本此使用以下命令:

certutil -addstore Root C:\windows\temp\selfsigned.crt 

selfsigned.crt将是PEM编码的证书安装。

我已经使用了几年,但是如果您将证书复制到每台机器并运行该证书,则应视为可信。理想情况下,证书将由您的IIS证书颁发机构签署,以便您可以在每台机器上简单地安装自签名的根CA证书,然后任何由其签署的证书将自动受信任。

相关问题