我们在运行IIS7 php webapp的本地商业网络上有一台服务器,该服务器通过公共域http://ourinternalnetwork/提供给整个建筑物内的其他客户端机器。我只是想知道是否有人知道安装自签名证书的方法,而客户端计算机上没有任何警告消息通过Chrome访问https://ourinternalnetwork/。
如果可以解决问题,我们可以手动更改每台客户端计算机吗?但这只是以特定方式在服务器上安装它的情况吗?
提前致谢!
答案 0 :(得分:2)
在Windows上,您可以使用以下命令编写脚本:
certutil -addstore Root C:\windows\temp\selfsigned.crt
selfsigned.crt
将是要安装的PEM编码证书。
自从我使用它以来已经过了几年但是如果你将证书复制到每台机器并运行它,它应该被认为是可信的。理想情况下,证书将由您的IIS证书颁发机构签名,因此您只需在每台计算机上安装自签名的根CA证书,然后由该协议签署的任何证书都将自动受信任。
答案 1 :(得分:1)
为了避免自签名证书的警告,您必须要求您的客户安装证书"。根据用户使用的操作系统,他们必须做不同的事情。
此外,由于 chrome 58 ,您需要确保服务器的证书包含具有正确的DNS和/或IP条目/条目的subjectAltName,即使它仅适用于一个主人。
Mac OS X
由于Chrome不再显示网址旁边的证书选项,因此您的用户必须打开开发人员工具(Option + Command + i)并转到"安全"标签。然后单击"查看证书"然后拖动证书图像并将其放到任何文件夹中。
然后双击您刚刚保存的 cer 文件,将打开Keychain Access。
选择要存储的钥匙串,然后点击"始终信任"。
如果您没有被问到在哪里保存它或者您应该信任它,请找到新添加的证书(它应该在列表的顶部),右键单击它,选择"获取信息"然后选择"始终信任"在“信任”选项卡的“#34;使用此证书"。
下您可以使用以下脚本自动执行此操作:
<ul id="banner2">
<li> <a href="#" class="button2">Go</a> </li>
<li> Phasellus quam turpis, feugiat sit amet ornare in, hendrerit in lectus. Praesent semper mod quis eget mi. Etiam eu<br />ante risus. Aliquam erat volutpat. Aliquam luctus et mattis lectus amet pulvinar. Nam nec turpis consequat.</li>
</ul>
Windows
按照与OS X相同的步骤下载证书,然后单击开始并运行命令 certmgr.msc
展开树以转到受信任的根证书颁发机构|证书。转到“所有任务”,选择“导入”并导入相关证书。